Mécanisme de retouche de niveau analogique quantifié par l'inventeur

Auteur:Le petit rêve, Créé: 2017-02-07 13:04:57, Mis à jour: 2023-09-07 17:49:15

Mécanisme de retouche de niveau analogique quantifié par l'inventeur


  • 1ère, l'architecture de retouche

    Le programme de stratégie en retouche quantifié par l'inventeur est un processus de contrôle complet, le programme est consulté en continu à une certaine fréquence. Les données renvoyées par les différents marchés et les API de transactions sont également conformes au moment de l'appel, simulant la situation lors de l'exécution réelle. Il appartient au niveau onTick et non au niveau onBar des autres systèmes de retouche.

  • 2° la différence entre le retouche au niveau de l'analogie et le retouche au niveau du disque.

    • Retour à l'échelle de l'analogie

      L'analyse de niveau d'analogie consiste à simuler la valeur de ticker dans la séquence de temps de cette barre en fonction des données de la ligne K de la ligne K de base du système d'analyse, selon un certain algorithme dans un cadre composé des valeurs du prix le plus élevé, le prix le plus bas, le prix d'ouverture et le prix de fermeture de la ligne K de base donnée.

    • Résultats au niveau du disque

      La répétition au niveau du disque est la répétition au niveau du vrai ticker dans la séquence de temps de Bar. Pour les stratégies basées sur les données au niveau du ticker, la répétition au niveau du vrai disque est plus proche de la vérité. Les tickers sont des données enregistrées réellement et non générées par analogie.

  • 3, le mécanisme de retouche de niveau analogique de la ligne K inférieure

    Le retouche au niveau du disque réel n'a pas d'option de ligne K inférieure (car les données de ticker sont réelles et ne sont pas générées par simulation avec une ligne K inférieure). Dans le retouche de niveau d'analogie, le ticker généré par analogie à partir des données de ligne K. Cette ligne de données est la ligne K inférieure. Dans l'utilisation réelle du retouche de niveau d'analogie, le cycle de ligne K inférieure doit être inférieur au cycle de l'API pour obtenir la ligne K lorsque la stratégie est en cours d'exécution. Sinon, il y a une perte réelle de données lorsque l'API pour obtenir la ligne K de la période spécifiée est appelée car le cycle de la ligne K inférieure est plus grand et le nombre de tickers générés est inférieur.

  • 4 Comment les lignes K inférieures génèrent des données de ticker

    Le mécanisme de génération des tickers analogiques des lignes K inférieures est le même que pour le MT4.

    img img img img

  • 5, le code de l'algorithme qui génère les données ticker

    L'algorithme spécifique pour simuler les données de la ligne K sous-jacente et les données de tick:

function recordsToTicks(period, num_digits, records) {
    if (records.length == 0) {
        return []
    }
    var ticks = []
    var steps = [0, 2, 4, 6, 10, 12, 16, 18, 23, 25, 27, 29]
    var pown = Math.pow(10, num_digits)

    function pushTick(t, price, vol) {
        ticks.push([Math.floor(t), Math.floor(price * pown) / pown, vol])
    }

    for (var i = 0; i < records.length; i++) {
        var T = records[i][0]
        var O = records[i][1]
        var H = records[i][2]
        var L = records[i][3]
        var C = records[i][4]
        var V = records[i][5]
        if (V > 1) {
            V = V - 1
        }
        if ((O == H) && (L == C) && (H == L)) {
            pushTick(T, O, V)
        } else if (((O == H) && (L == C)) || ((O == L) && (H == C))) {
            pushTick(T, O, V)
        } else if ((O == C) && ((O == L) || (O == H))) {
            pushTick(T, O, V / 2)
            pushTick(T + (period / 2), (O == L ? H : L), V / 2)
        } else if ((C == H) || (C == L)) {
            pushTick(T, O, V / 2)
            pushTick(T + (period * 0.382), (C == L ? H : L), V / 2)
        } else if ((O == H) || (O == L)) {
            pushTick(T, O, V / 2)
            pushTick(T + (period * 0.618), (O == L ? H : L), V / 2)
        } else {
            var dots = []
            var amount = V / 11
            pushTick(T, O, amount)
            if (C > O) {
                dots = [
                    O - (O - L) * 0.75,
                    O - (O - L) * 0.5,
                    L,
                    L + (H - L) / 3.0,
                    L + (H - L) * (4 / 15.0),
                    H - (H - L) / 3.0,
                    H - (H - L) * (6 / 15.0),
                    H,
                    H - (H - C) * 0.75,
                    H - (H - C) * 0.5,
                ]
            } else {
                dots = [
                    O + (H - O) * 0.75,
                    O + (H - O) * 0.5,
                    H,
                    H - (H - L) / 3.0,
                    H - (H - L) * (4 / 15.0),
                    H - (H - L) * (2 / 3.0),
                    H - (H - L) * (9 / 15.0),
                    L,
                    L + (C - L) * 0.75,
                    L + (C - L) * 0.5,
                ]
            }
            for (var j = 0; j < dots.length; j++) {
                pushTick(T + period * (steps[j + 1] / 30.0), dots[j], amount)
            }
        }
        pushTick(T + (period * 0.98), C, 1)
    }
    return ticks
}

Par conséquent, il y a des sauts de prix dans la séquence temporelle lorsque l'on utilise une réévaluation au niveau de l'analogue.


Plus de

Je ne sais pas.Pourquoi une ligne K avec une ligne d'ombrage est-elle simulée en 12 tiques, simplement pour augmenter le nombre de tiques?

Les Spartans jouent à la quantificationEst-il possible d'ajouter des ticks personnalisés, les ticks générés au niveau de l'analogie actuelle sont très différents des ticks réels

Un vide infini sous la luneLes contrats peuvent-ils être testés pour simuler une explosion?

FangBei est là.Dans les cycles simulés, une heure après la reprise est immédiatement un jour, pourquoi pas deux heures, quatre heures, six heures, douze heures, ces cycles couramment utilisés?

Le petit rêveLes cycles K de la ligne inférieure sont de 1 minute et les grains de données sont très petits. Les données collectées peuvent être analysées au niveau du disque, ou fournies à partir de sources personnalisées.

Le petit rêveLe système de retouche n'a pas de mécanisme de dépistage de dépistage de dépistage de dépistage de dépistage de dépistage de dépistage de dépistage de dépistage.

Le petit rêveLe système de retouche définit quelques cycles plus courants, et si vous voulez des cycles de ligne K, vous pouvez consulter la stratégie de square bracket. Il existe des modèles qui peuvent convertir les cycles de ligne K.