Forex Data 🚀
forex (golang) – Microservice that works with Streaming API Key
- ✅ Getting real-time data (websocket)
- ✅ Proxy web socket server for data
- ✅ Save data to db (PostgreSQL)
- ✅ History rest request (Generate Candlestick chart) (GET) /?startDate /?endDate /?symbol /?timeframe
- ✅ Get up-to-date data now /?symbol
Raw socket data
{
"symbol": "LTCUSD",
"ts": "1660694052026",
"bid": 61.348,
"ask": 61.353,
"mid": 61.350502
}
Candlestick chart Data
[{
"open": 61.5284602,
"close": 61.5655,
"high": 61.600502,
"low": 61.5284602,
"timestamp": 1660571731680
}]
Requests
Request example getting historical data
GET -> https://domain/forex/hostory?start_date=1660567220494&end_date=1660567787724&symbol=ETHUSD&timeframe=60
- end_date – end date (timestamp)
- start_date – start date (timestamp)
- symbol – currency pair
- timeframe – in seconds
Example getting up-to-date data now by symbol
GET -> https://domain/forex/actual?symbol=ETHUSD
- symbol – currency pair
Example ping
GET -> https://domain/forex/ping
Example socket
WS -> wss://domain:3495/forexws
Run
in .env
file:
key=qwerft_wedrftg
nominals=EURCAD,EURUSD,GBPAUD,AUDCHF,CHFJPY,EURNZD
key – Streaming API Key
nominals – Сomma-separated list of currency pair
run on port: 3495
Before launching, create a database in PostgreSql
CREATE DATABASE forex;