Signals Service
Get real-time trading signal data
GET
/api/signalsGet signal list with symbol and date filters
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| symbol | string[] | Optional | Filter by trading symbol, e.g. EURUSD |
| startDate | datetime | Optional | Start date, ISO 8601 format |
Request
GET https://api.aryenquant.com/api/signals?symbol=xauusd&startDate=2026-01-01T00:00:00Z
Headers:
X-API-Key: your_api_keyResponse
{
"items": [
{
"id": 1,
"signalId": "4F3RAZ",
"symbol": "xauusd",
"timeframe": "h1",
"direction": "bull",
"confirmedAt": "2026-01-07T08:00:00Z", // UTC 时间,信号开始
"endedAt": "2026-01-07T12:30:00Z", // UTC 时间,信号结束(null 表示进行中)
"createdAt": "2026-01-07T08:00:01Z" // UTC 时间
}
]
}Response Fields
| Name | Type | Description |
|---|---|---|
| id | number | Internal unique identifier |
| signalId | string | Signal ID, 6-character code for tracking |
| symbol | string | Trading symbol, e.g. XAUUSD |
| timeframe | string | Timeframe, e.g. M1, M5, H1, D1 |
| direction | string | Trade direction, BUY or SELL |
| confirmedAt | datetime | Signal confirmation time (UTC), signal start time |
| endedAt | datetime? | Signal end time (UTC), null means signal is ongoing |
| createdAt | datetime | Record creation time (UTC) |
About Duration
Duration should be calculated on client side based on whether endedAt is null:
// Signal ongoingif (endedAt == null) duration = now() - confirmedAt// Signal endedif (endedAt != null) duration = endedAt - confirmedAtGET
/api/signals/filtersGet available filter options
Request
GET https://api.aryenquant.com/api/signals/filters
Headers:
X-API-Key: your_api_keyResponse
{
"symbols": ["btcusd", "xauusd", ...],
"directions": ["bull", "bear"],
"timeframes": ["m1", "m5", "m15", "m30", "h1", "h4", "d1"]
}