TRACK_OHLC Command
Start or Stop streaming OHLC prices using the data port (default TCP 78) for a selected TIMEFRAME.
Help
Example
Single Line command (necessary for MTsocketAPI):
{"MSG":"TRACK_OHLC","OHLC":[{"TIMEFRAME":"PERIOD_M1","SYMBOL":"EURUSD"},{"TIMEFRAME":"PERIOD_M5","SYMBOL":"GBPUSD","DEPTH":3}]}
Same command in Beauty Format:
{
"MSG":"TRACK_OHLC",
"OHLC":[
{
"TIMEFRAME":"PERIOD_M1",
"SYMBOL":"EURUSD"
},
{
"TIMEFRAME":"PERIOD_M5",
"SYMBOL":"GBPUSD",
"DEPTH":3
}
]
}
TIMEFRAME values:
- PERIOD_M1
- PERIOD_M2
- PERIOD_M3
- PERIOD_M4
- PERIOD_M5
- PERIOD_M6
- PERIOD_M10
- PERIOD_M12
- PERIOD_M15
- PERIOD_M20
- PERIOD_M30
- PERIOD_H1
- PERIOD_H2
- PERIOD_H3
- PERIOD_H4
- PERIOD_H6
- PERIOD_H8
- PERIOD_H12
- PERIOD_D1
- PERIOD_W1
- PERIOD_MN1
Important
There is an optional tag: DEPTH (Integer)
DEPTH is set to 1 by default. When a new bar arrives at MTsocketAPI, the last closed bar will be retrieved. If DEPTH is set to 5, the last five closed bars within the selected TIMEFRAME
Note
If PERIOD_M1 is selected, OHLC data will be received every minute when a new price tick arrives. Conversely, if PERIOD_H1 is selected, OHLC data will be received every hour.
MTsocketAPI reply:
{
"MSG":"TRACK_OHLC",
"SUCCESS":["GBPUSD","EURUSD"],
"ERROR_ID":0,
"ERROR_DESCRIPTION":"The operation completed successfully"
}
If we connect to default data port TCP/78 then we can see every minute a new quote for EURUSD and GBPUSD:
$ telnet localhost 78
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
{"MSG":"TRACK_OHLC","SYMBOL":"EURUSD","PERIOD":"PERIOD_M1","OHLC":[{"TIME":"2024.06.12 19:31:00","OPEN":1.08435,"HIGH":1.08441,"LOW":1.08433,"CLOSE":1.08437,"TICK_VOLUME":41}]}
{"MSG":"TRACK_OHLC","SYMBOL":"EURUSD","PERIOD":"PERIOD_M1","OHLC":[{"TIME":"2024.06.12 19:32:00","OPEN":1.08438,"HIGH":1.08463,"LOW":1.08437,"CLOSE":1.08463,"TICK_VOLUME":28}]}
{"MSG":"TRACK_OHLC","SYMBOL":"EURUSD","PERIOD":"PERIOD_M1","OHLC":[{"TIME":"2024.06.12 19:33:00","OPEN":1.08462,"HIGH":1.08482,"LOW":1.08462,"CLOSE":1.08470,"TICK_VOLUME":43}]}
{"MSG":"TRACK_OHLC","SYMBOL":"EURUSD","PERIOD":"PERIOD_M1","OHLC":[{"TIME":"2024.06.12 19:34:00","OPEN":1.08471,"HIGH":1.08473,"LOW":1.08464,"CLOSE":1.08470,"TICK_VOLUME":20}]}
{"MSG":"TRACK_OHLC","SYMBOL":"GBPUSD","PERIOD":"PERIOD_M5","OHLC":[{"TIME":"2024.06.12 19:30:00","OPEN":1.28446,"HIGH":1.28485,"LOW":1.28445,"CLOSE":1.28475,"TICK_VOLUME":149},{"TIME":"2024.06.12 19:25:00","OPEN":1.28455,"HIGH":1.28466,"LOW":1.28436,"CLOSE":1.28445,"TICK_VOLUME":170},{"TIME":"2024.06.12 19:20:00","OPEN":1.28492,"HIGH":1.28503,"LOW":1.28449,"CLOSE":1.28455,"TICK_VOLUME":150}]}
{"MSG":"TRACK_OHLC","SYMBOL":"EURUSD","PERIOD":"PERIOD_M1","OHLC":[{"TIME":"2024.06.12 19:35:00","OPEN":1.08469,"HIGH":1.08476,"LOW":1.08457,"CLOSE":1.08457,"TICK_VOLUME":39}]}
{"MSG":"TRACK_OHLC","SYMBOL":"EURUSD","PERIOD":"PERIOD_M1","OHLC":[{"TIME":"2024.06.12 19:36:00","OPEN":1.08457,"HIGH":1.08458,"LOW":1.08455,"CLOSE":1.08457,"TICK_VOLUME":14}]}
{"MSG":"TRACK_OHLC","SYMBOL":"EURUSD","PERIOD":"PERIOD_M1","OHLC":[{"TIME":"2024.06.12 19:37:00","OPEN":1.08459,"HIGH":1.08462,"LOW":1.08441,"CLOSE":1.08441,"TICK_VOLUME":40}]}
{"MSG":"TRACK_OHLC","SYMBOL":"EURUSD","PERIOD":"PERIOD_M1","OHLC":[{"TIME":"2024.06.12 19:38:00","OPEN":1.08441,"HIGH":1.08442,"LOW":1.08428,"CLOSE":1.08434,"TICK_VOLUME":32}]}
{"MSG":"TRACK_OHLC","SYMBOL":"GBPUSD","PERIOD":"PERIOD_M5","OHLC":[{"TIME":"2024.06.12 19:35:00","OPEN":1.28470,"HIGH":1.28479,"LOW":1.28413,"CLOSE":1.28422,"TICK_VOLUME":165},{"TIME":"2024.06.12 19:30:00","OPEN":1.28446,"HIGH":1.28485,"LOW":1.28445,"CLOSE":1.28475,"TICK_VOLUME":149},{"TIME":"2024.06.12 19:25:00","OPEN":1.28455,"HIGH":1.28466,"LOW":1.28436,"CLOSE":1.28445,"TICK_VOLUME":170}]}
{"MSG":"TRACK_OHLC","SYMBOL":"EURUSD","PERIOD":"PERIOD_M1","OHLC":[{"TIME":"2024.06.12 19:39:00","OPEN":1.08435,"HIGH":1.08449,"LOW":1.08435,"CLOSE":1.08442,"TICK_VOLUME":27}]}
{"MSG":"TRACK_OHLC","SYMBOL":"EURUSD","PERIOD":"PERIOD_M1","OHLC":[{"TIME":"2024.06.12 19:40:00","OPEN":1.08443,"HIGH":1.08448,"LOW":1.08437,"CLOSE":1.08443,"TICK_VOLUME":27}]}
Stop receiving OHLC data:
Note
You must request OHLC data using the port TCP/77 and MTsocketAPI will stream OHLC data on port TCP/78.
Tip
You can connect multiple clients to TCP/78 port and all of them will receive the tick data.