Les ressources ont été chargées... Je charge...

Format des données

Le format retourné doit être l'un des deux formats suivants (qui seront automatiquement reconnues par le système):

  • Niveau de simulation Tick, voici un exemple de données JSON:

    {
        "detail": {
            "eid": "Binance",
            "symbol": "BTC_USDT",
            "alias": "BTCUSDT",
            "baseCurrency": "BTC",
            "quoteCurrency": "USDT",
            "marginCurrency": "USDT",
            "basePrecision": 5,
            "quotePrecision": 2,
            "minQty": 0.00001,
            "maxQty": 9000,
            "minNotional": 5,
            "maxNotional": 9000000,
            "priceTick": 0.01,
            "volumeTick": 0.00001,
            "marginLevel": 10
        },
        "schema":["time", "open", "high", "low", "close", "vol"],
        "data":[
            [1564315200000, 9531300, 9531300, 9497060, 9497060, 787],
            [1564316100000, 9495160, 9495160, 9474260, 9489460, 338]
        ]
    }
    
  • Cochez le niveau de bot, voici un exemple de données JSON: Les données de backtest au niveau du tick (contiennent des informations sur la profondeur du marché, et le format de profondeur est un tableau de[price, volume]Il peut avoir plusieurs niveaux de profondeur,askspour l'ordre croissant des prix,bidspour l' ordre décroissant des prix).

    {
        "detail": {
            "eid": "Binance",
            "symbol": "BTC_USDT",
            "alias": "BTCUSDT",
            "baseCurrency": "BTC",
            "quoteCurrency": "USDT",
            "marginCurrency": "USDT",
            "basePrecision": 5,
            "quotePrecision": 2,
            "minQty": 0.00001,
            "maxQty": 9000,
            "minNotional": 5,
            "maxNotional": 9000000,
            "priceTick": 0.01,
            "volumeTick": 0.00001,
            "marginLevel": 10
        },
        "schema":["time", "asks", "bids", "trades", "close", "vol"],
        "data":[
            [1564315200000, [[9531300, 10]], [[9531300, 10]], [[1564315200000, 0, 9531300, 10]], 9497060, 787],
            [1564316100000, [[9531300, 10]], [[9531300, 10]], [[1564316100000, 0, 9531300, 10]], 9497060, 787]
        ]
    }
    
Le champ Définition
détails Informations détaillées sur le type de données demandé,

le nom de la monnaie libellée, le nom de la la précision, la quantité de commande minimale, etc. Il spécifie les attributs des colonnes dans les données array, qui est sensible aux petites lettres et est limité au temps, ouvert, haut, bas, fermé, vol, demande, offre, négocie Les données La structure des colonnes, les données enregistrées selon le schéma réglages.

champ de détail

Le champ Définition
- Je vous en prie. Exchange Id, veuillez noter que le spot et les contrats à terme d'un
Certains échanges ont des effets différents.
le symbole Code du produit de négociation
alias Le symbole de l'échange correspondant au courant
code du produit commercial
Monnaie de base Monnaie de négociation
CitéMonnaie Monnaies libellées
MargeMonnaie Monnaie de marge
basePrécision Vérité de la monnaie de la transaction
Citation précise Précision de la devise de prix
MinQty Quantité minimale de commande
Le nombre maximal Quantité maximale de commande
Le projet de Montant minimum de la commande
maxNotif Montant maximal de la commande
prixTick Saut de prix
Le volume Valeur minimale de modification de la quantité d'ordre (un saut dans la quantité)
quantité de commande)
MargeLe niveau Valeur de l'effet de levier des contrats à terme
type de contrat Pour les contrats perpétuels fixés à:swap, le

Le système de backtest continuera à envoyer des indices de taux de financement et de prix Les demandes.

Attributs de colonne spéciauxasks, bids, trades:

Le champ Définition Les commentaires
demande / offre [prix, volume],...] Par exemple, les données

LeLive Trading Level TickExemple de données:[[9531300, 10]]Je ne sais pas. Les échanges, le temps, la direction, le prix, le volume... Par exemple, les donnéesLive Trading Level TickExemple de données:[[1564315200000, 0, 9531300, 10]] |

Lors du backtesting des contrats perpétuels sur les bourses à terme, les Les sources de données nécessitent également des données supplémentaires sur le taux de financement et le prix Le système de backtesting continuera d'envoyer des requêtes pour les taux de financement uniquement lorsque les données de marché demandées sont renvoyées et le champ de détail dans la structure retournée contient le"contractType": "swap"une paire clé-valeur.

Lorsque le système de backtesting reçoit des données sur le taux de financement, il continuer d'envoyer des demandes de données sur l'indice des prix.

La structure des données sur le taux de financement est la suivante:

{
    "detail": {
        "eid": "Futures_Binance",
        "symbol": "BTC_USDT.funding",
        "alias": "BTC_USDT.funding",
        "baseCurrency": "BTC",
        "quoteCurrency": "USDT",
        "marginCurrency": "",
        "basePrecision": 8,
        "quotePrecision": 8,
        "minQty": 1,
        "maxQty": 10000,
        "minNotional": 1,
        "maxNotional": 100000000,
        "priceTick": 1e-8,
        "volumeTick": 1e-8,
        "marginLevel": 10
    },
    "schema": [
        "time",
        "open",
        "high",
        "low",
        "close",
        "vol"
    ],
    "data": [
        [
            1584921600000,
            -16795,
            -16795,
            -16795,
            -16795,
            0
        ],
        [
            1584950400000,
            -16294,
            -16294,
            -16294,
            -16294,
            0
        ]
        // ...
    ]
}
  • L'intervalle entre les périodes adjacentes est de 8 heures.
  • Par exemple, le taux de financement de Binance est mis à jour toutes les 8 heures. Les données relatives au taux de financement sont-elles -16795? Parce que, comme les données de ligne K, afin d'éviter la perte de précision en virgule flottante pendant la transmission réseau, les données utilisent le type entier; les données de taux de financement peuvent également être négatives.

Exemple de demande de données sur le taux de financement à partir du backtesting Le système est le suivant:

http://customserver:9090/data?custom=0&depth=20&detail=true&eid=Futures_Binance&from=1351641600&period=86400000&round=true&symbol=BTC_USDT.funding&to=1611244800&trades=0

La structure des données relatives à l'indice des prix est la suivante:


{
    "detail": {
        "eid": "Futures_Binance",
        "symbol": "BTC_USDT.index",
        "alias": "BTCUSDT",
        "baseCurrency": "BTC",
        "quoteCurrency": "USDT",
        "contractType": "index",
        "marginCurrency": "USDT",
        "basePrecision": 3,
        "quotePrecision": 1,
        "minQty": 0.001,
        "maxQty": 1000,
        "minNotional": 0,
        "maxNotional": 1.7976931348623157e+308,
        "priceTick": 0.1,
        "volumeTick": 0.001,
        "marginLevel": 10,
        "volumeMultiple": 1
    },
    "schema": [
        "time",
        "open",
        "high",
        "low",
        "close",
        "vol"
    ],
    "data": [
        [1584921600000, 58172, 59167, 56902, 58962, 0],
        [1584922500000, 58975, 59428, 58581, 59154, 0],
        // ...
    ]
}

Exemple de demande de données sur l'indice des prix envoyée par le backtesting Le système est le suivant:

http://customserver:9090/data?custom=0&depth=20&detail=true&eid=Futures_Binance&from=1351641600&period=86400000&round=true&symbol=BTC_USDT.index&to=1611244800&trades=0
Enregistrer les paramètres de test arrière Exemple de source de données personnalisée