Das ist richtig! Das ist richtig, es sind 30 Zeilen Code! Nur 30 Zeilen kleiner Code, ich bin es gewohnt, zuerst zu lesen und zu lesen.
Die Strategieparameter sind:
Parameter | Beschreibung | Typ | Standardwert |
---|---|---|---|
FastPeriode | Markteinführungszeit | Zahl (number) | 3 |
Langsamer Zeitraum | Eintrittszeit langsam | Zahl (number) | 7 |
Eintritt der Periode | Eintrittszeit | Zahl (number) | 3 |
AusgangFastPeriode | Ausverkaufszyklus | Zahl (number) | 3 |
AusgangSlowPeriod | Ausfall-Langsamkeitszyklus | Zahl (number) | 7 |
Abgang | Beobachtungszeit nach dem Verkauf | Zahl (number) | 1 |
Positionsverhältnis | Positionsanteil | Zahl (number) | 0.8 |
Intervall | Umfragezeitraum ((Sekunden)) | Zahl (number) | 10 |
交易类库
Es ist einfach, eine Strategie zu schreiben, ohne sich Gedanken darüber zu machen, ob man sie kaufen oder verkaufen soll.function main() {
var STATE_IDLE = -1;
var state = STATE_IDLE;
var opAmount = 0;
var initAccount = $.GetAccount();
Log(initAccount);
while (true) {
if (state === STATE_IDLE) {
var n = $.Cross(FastPeriod, SlowPeriod);
if (Math.abs(n) >= EnterPeriod) {
opAmount = parseFloat((initAccount.Stocks * PositionRatio).toFixed(3));
var obj = n > 0 ? $.Buy(opAmount) : $.Sell(opAmount);
if (obj) {
opAmount = obj.amount;
state = n > 0 ? PD_LONG : PD_SHORT;
Log("开仓详情", obj, "交叉周期", n);
}
}
} else {
var n = $.Cross(ExitFastPeriod, ExitSlowPeriod);
if (Math.abs(n) >= ExitPeriod && ((state === PD_LONG && n < 0) || (state === PD_SHORT && n > 0))) {
var obj = state === PD_LONG ? $.Sell(opAmount) : $.Buy(opAmount);
state = STATE_IDLE;
var nowAccount = $.GetAccount();
LogProfit(nowAccount.Balance - initAccount.Balance, '钱:', nowAccount.Balance, '币:', nowAccount.Stocks, '平仓详情:', obj, "交叉周期", n);
}
}
Sleep(Interval*1000);
}
}
Variablenerklärung
Mit Schlüsselwörternvar
+ Variablennamen, zum Beispielvar name = “小明”
Kreislauf
while(循环条件){
// 将会重复执行的代码
}
Wenn die Loop-Bedingung wahr ist, wird der Code innerhalb von {} wiederholt ausgeführt. Wenn die Loop-Bedingung falsch ist, springt der Loop aus.
Voraussetzungen
if (判断条件){
// 执行代码
} else {
// 执行代码
}
Das bedeutet, dass wenn wir diesen Code ausführen, dann ist es einfach, wenn wir diesen Code ausführen, dann ist es einfach.
Wertschätzung
Einer=
Die Zahl ist eine Angabe, zum Beispiel.
name = “张三”;
Das heißt, dass man den Namen von Liu Beiang als Name verwenden kann, weil die Anerkennung leicht verwechselt wird mit der Vergleichbarkeit.
Zum Beispiel:==
Zwei gleichwertige Zahlen.
Beispiele“张三”==“李四”
Es ist klar, dass Zhang nicht Li ist.“张三”==“李四”
Das ist eine falsche Botschaft.
Verknüpfte APIs
Vor der Demonstration der Strategie haben wir die API und die Template-Export-Funktion, die in der Strategie verwendet werden, behandelt.
Der Strategiecode verwendet auch Bibliotheksfunktionen und Objektmethoden von JavaScript.
Sie können hier mehr über JavaScript erfahren: JavaScript Number Objecthttp://www.w3school.com.cn/jsref/jsref_obj_number.aspWeiterlesen
Das Programm ist handgezeichnet, ohne Werkzeug, amateurhaft.
Schritt für Schritt bauen wir unsere Strategie auf.
Alle strategischen Prozesse werden an den Eingängenmain()
Funktionen, d.h. Strategien, die von der Main-Funktion ausgehen.
Echtzeitplatte
Das ist die einfache 30-Zeilen-Strategie! Die Running! Strategie ist ausgeführt und die Operationen eingekauft.
Dank Inventor Quantify, der so schlanken Code zur Verfügung stellt, gibt es eine Menge Open-Source-Strategien, die man lernen kann, um sich zu verbessern und mit vielen Quantitatoren voranzukommen.
官方QQ群定期更新学习资源,为量化学习者铺平道路,登堂入室。
Videounterricht unterstützt
http://v.youku.com/v_show/id_XMTUyNDY1NjQ2NA==.html
Referenzen
FMZ_JHIst die $.GetAccount-Funktion in der API auf exchange.GetAccount ((() aktualisiert?
Wo ist der Mann?Ich habe den Code verstanden, aber ich weiß nicht, was diese Strategie wirklich bewirkt.
:)Danke Kleine Träume, dein Artikel ist sehr gut geschrieben.
- Ich weiß nicht.Das Tutorial des Eigentümers ist sehr gut geschrieben, vielen Dank!
BincoinDanke, Herr Vermieter, ich will lernen.
Kurzfristig verkauft Wang Won seine Strategie für hohe PreiseIch bin nicht derjenige, der die Dinge so genau beschreibt.
Die Erfinder quantifizieren - Kleine Träume$.GetAccount ist die Exportfunktion der FMZ-Vorlage (die Vorlage ist wiederverwendbarer Code, siehe Beschreibung der Vorlage in der API-Dokumentation). $.GetAccount ist die Exportfunktion der Vorlage: https://www.fmz.com/strategy/10989. Die oben genannten Strategien sind nur ein Teil des Codes, ohne dass die Parameter festgelegt wurden. Die vollständige Strategie kann in der 30-Zeilen-Rechteck-Strategien-Suche im Strategie-Platz gesucht werden.
Wo ist der Mann?Das war es. Vielen Dank.
Die Erfinder quantifizieren - Kleine TräumeDas heißt, zwei gleichmäßige Linien, die auf der schnellen Linie durch eine langsame Linie gehen. Im Allgemeinen sind Kaufsignale mit einer höheren Wahrscheinlichkeit. Die langsame Linie unter der schnellen Linie ist im Allgemeinen ein Verkaufssignal mit einer höheren Wahrscheinlichkeit.
Die Erfinder quantifizieren - Kleine TräumeIch bin nicht sehr freundlich, aber ich werde später mehr lernen, danke für die Unterstützung!
Die Erfinder quantifizieren - Kleine TräumeIch möchte Ihnen danken für Ihre Unterstützung.