Die meisten Strategien müssen vor der Inbetriebnahme überprüft werden, und FMZ unterstützt einige Arten von digitalen Währungen, sowohl Instant-, Futures- und Perpetuity-Kontrakte als auch alle Arten von Commodity-Futures.
Wie in der Abbildung oben gezeigt, kann die Beginnszeit bis zur Endzeit der Rückmessung als eine Zeitachse betrachtet werden. Bei der Rückmessung bewegt sich der Zeitpunkt entlang der Achse von links nach rechts und beginnt die Rückmessung. Zu diesem Zeitpunkt können nur die historischen Daten bis zu diesem Punkt gewonnen werden. Natürlich müssen die tatsächlichen Rückmesssysteme einen Kompromiss zwischen Präzision und Effizienz treffen, da die Rückmessungszeitpunkte immer dichter sind und je länger sie benötigt werden.
Der onbar-Rücklauf ist auf der K-Linie basiert, wobei jede K-Linie einen Rücklauf-Zeitpunkt erzeugt, an dem Informationen wie Hoch-Niedrig-Abrechnungen, Handelsvolumen und andere Informationen über die aktuelle K-Linie sowie über die historische K-Linie bis zu diesem Zeitpunkt abgerufen werden können. Der Nachteil dieses Mechanismus ist offensichtlich: auf einer K-Linie kann nur ein Kauf oder ein Verkauf erzeugt werden, wobei der Preis normalerweise auf dem Schlusskurs der K-Linie basiert. Und eine K-Linie kann nur vier Preise erhalten, wobei keine Informationen darüber erhalten werden, wie sich der Preis in einer K-Linie ändert, ob der höchste Preis zuerst eintritt oder der niedrigste Preis zuerst eintritt.
Die Abbildung oben zeigt die FMZ-Rückmessungsinterface. Die Rückmessungsmodelle werden in zwei Arten von Analog- und Festplatten-Rückmessungen unterteilt:
Was ist ein Tic?
Im Gegensatz zu K-Liniendaten ist ein Tick der Preis an einem bestimmten Zeitpunkt. Basierend auf K-Liniendaten wissen wir eigentlich nur, wann der Preis zu Beginn und zu Ende des Kurses stattfindet, und es ist unklar, wann der Preis in einem K-Linienzyklus am höchsten ist. Tatsächlich werden auch K-Liniendaten basierend auf einem Tick erzeugt.
Analog-Level-Rückprüfungen
Die Analog-Level-Rückmessung wählt die verwendeten K-Linienzyklen und die unteren K-Linienzyklen zurück. Wenn die Strategie beispielsweise eine Stunden-Linien-Rückmessung verwendet und die unteren K-Linien 5 Minuten wählen, basiert das Intervall der Rückmessungszeitpunkte auf einem 5-minütigen Tick, der von der K-Linien-Analogie erzeugt wird, der sich speziell als ständig veränderter Schlusspreis der neuesten 1-Stunden-K-Line darstellt.https://www.fmz.com/bbs-topic/662
Wir zeigen den Mechanismus anhand einer einfachen Strategie, der Strategiecode:
function main() {
while(true){
var records = exchange.GetRecords() //GetRecords可以填参数,获取不同周期K线。
var ticker = exchange.GetTicker()
Log('K线收盘价: ', records[records.length-1].Close, 'ticker买一卖一价: ', ticker.Buy, ticker.Sell)
//js回测不用Sleep,会自动跳到下一个tick。Python需要一个小的休眠时间
}
}
Die Ergebnisse:Jede K-Linie hat nur einen Fixtick für den Start und den Schluss. Zwischen den 12 simulierten Tick wird eine K-Linie 14 Rückholzeiten bilden. Wenn die Rückholzeiten an einem Tag durchgeführt werden, wird der unteren K-Linie-Zyklus für 5 Minuten, insgesamt 24 × 12 × 14 = 4032 Zeitpunkte, während die traditionellen OnBar-Rückholzungen nur 24 haben, was die Präzision erheblich verbessert.
Echtzeit-Rückprüfung
Die realen Tick-Tests mit einem Mindestintervall von 1s zwischen den Zeitpunkten variieren in der Präzision von bis zu einer Sekunde, aber aufgrund der großen Datenmenge und der langsamen Tastgeschwindigkeit können die Tastzeiten nicht sehr lang sein.
Selbst wenn die Rückmessung auf der echten Ebene und die Echtplatte offensichtliche Datenmangel aufweist, wie z. B. keine Zugriff auf Transaktionsgeschichte, keine Zugriff auf tatsächliche Tiefenänderungen, echte Netzverzögerungen usw. FMZ verfügt über ein relativ gutes Rückmesssystem mit vielen kleinen Funktionen, wie z. B. einem simulierten Netzfehler, der für die Fehlerfähigkeit von Teststrategien verwendet werden kann, simuliert Netzverzögerungen, zeichnet Trendsymbole und so weiter.
Warum werden nur wenige Paare unterstützt, die von den Börsen zurückgezogen werden können?
Derzeit gibt es nur wenige übliche Transaktionen mit Daten, die eigentlich nicht sehr stark mit Strategien und Sorten zusammenhängen.
Kann BitMEX die Gebühren simulieren?
Sie können die BitMEX-Rückprüfung auswählen, um die Ereignisprotokolle zu öffnen.
Wer hat die Tests dort durchgeführt?
Die Wiederholung der JavaScript-Richtlinien erfolgt im Browser, wobei Python FMZ-Server oder eigene Host wählen kann.
Kann ich die Logs herunterladen?
Ja, es gibt einen Download-Button oben rechts im Logbook.
Kann man das vor Ort nachvollziehen?
FMZ ist ein Open Source-Python-Rückwertungs-Engine.https://www.fmz.com/bbs-topic/1687
Auch die BrautEine Minute-Level-Strategie, die am besten mit Festplatten-Daten überprüft wird, aber jetzt ist die Festplatten-Level-Prüfung, die nur zwei Stunden dauert, nicht sehr vernünftig, mindestens einen Tag dauert.