Every data source in QUIMERIA-HYPERION is normalized byDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/deskiziarecords/QUIMERIA-HYPERION/llms.txt
Use this file to discover all available pages before exploring further.
backend/data_connectors.py into a single canonical OHLCV format before entering the SMK pipeline. This means you can switch between a CSV file exported from MetaTrader and a live Bitget REST feed without changing any pipeline configuration.
Normalized OHLCV format
All loaders return a JSON array of bar objects. Timestamps are Unix seconds (UTC). Volume falls back to100 if the source does not provide it.
The pipeline calls
_normalize_bars() on every dataset and deduplicates bars by timestamp before loading. Bars are always sorted ascending by time.Data sources overview
| Source | Format | Endpoint |
|---|---|---|
| MT4/MT5 CSV export | Dot-separated date with optional TICKVOL/SPREAD columns | POST /api/load/csv |
| TradingView ISO export | ISO 8601 timestamp (2024-01-15T00:00:00+00:00) | POST /api/load/csv |
| TradingView US export | US date format (01/15/2024 00:00) | POST /api/load/csv |
| Dukascopy UTC format | DD.MM.YYYY HH:MM:SS.mmm UTC | POST /api/load/csv |
| Bitget REST API | Spot candle endpoint, auto-paged | POST /api/load/bitget |
| OANDA REST API | Granularity-based candle fetch | POST /api/load/oanda |
| Built-in sample | Synthetic 500-bar AMD cycle | POST /api/load/sample |
CSV uploads
The/api/load/csv endpoint accepts any of the four supported CSV dialects. The format detector reads the header line and first data row to pick the correct parser automatically.
MT4 / MT5 format
MT4 exports use a dot-separated date (2024.01.15) and separate DATE and TIME columns. MT5 adds TICKVOL, VOL, and SPREAD columns — all are accepted and the volume field is mapped to tickvol or vol whichever is present.
TradingView ISO format
TradingView’s ISO export uses a singletime column with a full ISO 8601 timestamp including timezone offset.
TradingView US format
TradingView’s US date export usesDATE and TIME as separate columns with MM/DD/YYYY date notation.
Dukascopy UTC format
Dukascopy exports combine date, time, and milliseconds into a singleUTC column.
Uploading a CSV file
- curl
- Python
Column name aliases
The normalizer accepts multiple column name variants for each OHLCV field:| Field | Accepted column names |
|---|---|
time | time, timestamp, UTC, datetime, date, Datetime, Date |
open | open, Open, o, OPEN |
high | high, High, h, HIGH |
low | low, Low, l, LOW |
close | close, Close, c, CLOSE |
volume | volume, Volume, tickvol, TickVol, vol, VOL, v |
Bitget REST API
The/api/load/bitget endpoint fetches historical candles from the Bitget v2 spot market API. The granularity maps to Bitget’s internal interval strings automatically.
| Interval | Bitget string |
|---|---|
1m | 1min |
3m | 3min |
5m | 5min |
15m | 15min |
1h | 1H |
- curl
- Python
Public Bitget candle endpoints do not require an API key. Set
BITGET_API_KEY in your .env file if you need access to private endpoints or higher rate limits.OANDA REST API
The/api/load/oanda endpoint fetches candles from the OANDA v20 REST API using your account credentials. The granularity parameter maps directly to OANDA’s granularity strings (e.g., H1, M15, D).
- curl
- Python
Built-in sample data
The/api/load/sample endpoint generates a synthetic 500-bar AMD (Accumulate → Manipulate → Distribute → Retrace) price cycle. It requires no credentials and is useful for verifying your pipeline configuration before connecting a live feed.
- curl
- Python
Verifying a loaded dataset
After any successful load, callGET /api/status to confirm the bar count, symbol, and pipeline state: