In den vorherigen Artikeln haben wir so viele Konzepte gelernt, wie es ist, sich zu programmieren und die Grundkonzepte für den quantitativen Handel zu quantifizieren. Ich glaube, dass alle Schüler, die mit dem Geschäft zu tun haben, von der Strategie des Anschlussnetzes gehört haben sollten, ob sie es gehört haben oder nicht.BörsenDie meisten Unternehmen haben ihre eigene Programmierung und Quantitative Trading Funktionen eingeführt, und die einfachste und einfachste Strategie ist, dass sie ihre eigenen Programmierung und Quantitative Trading-Funktionen einführen.Die NetzstrategieWenn wir also in den Münzkreis eintreten wollen, dann müssen wir uns nicht selbst darum kümmern, eine Netzstrategie zu realisieren.
Ich habe mir vorgestellt, dass ich das nicht tun kann. Sie schreiben keinen Code! Ich sehe, dass der Terminal groß ist!
Das ist wirklich richtig. Für nicht-computer-software-bezogene Fachleute, die nicht in Programmierarbeit beschäftigt sind, ist es ziemlich schwierig, eine vollständige Handelsstrategie selbst zu entwickeln.
Wenn Sie ein leicht verfügbares Tool haben, ist das ziemlich einfach, mit einer Schwierigkeit von mindestens 70%. Sie können sich vorstellen, wie einfach und schnell es ist, wenn Sie nur die Transaktionslogik selbst schreiben, während alle anderen Funktionen für die Interface-Verknüpfung, die Signaturverifizierung, die Profile, die Umgebungskonstruktion, das Schreiben von Benutzeroberflächen, das Schreiben von Interaktionen und so weiter vorhanden sind.
Glaubt ihr nicht? Lasst uns mal versuchen!
Das Tool, das wir benutzen, ist:FMZ.COM) ; die Kernstärke der Gestaltung der Netzstrategie ist eigentlich die Logik des Netzes zu kaufen, zu verkaufen, also ist das etwas, das zuerst herausgefunden werden muss, bevor die Strategie entworfen wird.
Hier ist der grundlegende Prozess der Strategieentwicklung:
1. Strategische Bedürfnisse zusammenfassen
Einfach ausgedrückt, was deine Strategie tun soll, wie sie funktioniert, welche Funktionen sie hat, etc. Diese Informationen können in einer Dokumentation geschrieben werden, bevor du tatsächlich den Strategiecode schreibst. Auf FMZ ist es sehr einfach, Strategien zu entwickeln.
Wenn wir uns die Speicherrichtlinien auswendig geschrieben haben, schreiben wir dann die Strategiebedürfnisse (die Strategiebedürfnisse sind auch nicht unveränderlich, sie können auch bei der Entwicklung dokumentiert werden).
XXX_USDT
Sie haben sich in den USA niedergelassen.BTC_USDT
。2. Konstruieren Sie die Datenstruktur des Grids:
Für unklare Ideen können wir zunächst eine Diagrammanalyse machen.
Man kann aus dem Anfangspris als Basispunkt für die Konstruktion der nächsten beiden Richtungen ein Gitter bilden. Das so genannte Gitter ist eine Eingangs- und Verkaufslinie mit einer Ebene. Durch das Diagramm können wir feststellen, dass jede Linie zwei Möglichkeiten hat: 1, Preis für das Tragen. 2 Preissenkungen Der Verkauf ist eine Art von Verkauf, bei dem der Preis steigt, und man wartet, bis der Preis abfällt, um einen Gewinn zu erzielen. Der Preis ist niedriger, man muss kaufen und dann warten, bis der Preis steigt, um einen Gewinn zu erzielen. Jede Gitterlinie hat also zwei Handelsmöglichkeiten: Kauf und Verkauf. Und jede Gitterlinie hat auch eine Eigenschaft, nämlich den Preis, den die Gitterlinie kennzeichnet. Wenn wir eine Strategie entwerfen, müssen wir uns zunächst klarmachen, was wir wollen.Was ist?Ich habe es mir vorgenommen, und dann ist es einfach, mit den Händen zu arbeiten.
Schreiben Sie eine Funktion, die die Datenstruktur des Gitterwerks konstruiert:
function createNet(begin, diff) { // begin,diff是参数,begin是初始价格,diff是网格间距(等差网格的间距是价格)
var oneSideNums = 10 // 网格向上、向下一边生成10条线,上图是一边生成2条(AB一边,CD一边),生成10条的自行脑补画面
var up = [] // 用来储存向上的“网格线”数据结构
var down = [] // 用来储存向下的“网格线”数据结构
for (var i = 0 ; i < oneSideNums ; i++) { // 根据oneSideNums的大小确定次数,循环构造“网格线”数据结构
var upObj = { // 构造一条向上的“网格线”数据结构
buy : false, // 买入标记,初始标记为false ,意思为没有买入
sell : false, // 卖出标记....
price : begin + diff / 2 + i * diff, // 这条“网格线”表示的价格位,可以观察根据循环进行,价格位是依次升高的
}
up.push(upObj) // 构造好的“网格线”数据结构放入up数组
var j = (oneSideNums - 1) - i // 循环时 j 的变动是:9 ~ 0
var downObj = {
buy : false,
sell : false,
price : begin - diff / 2 - j * diff,
}
if (downObj.price <= 0) { // 价格不能小于等于0
continue
}
down.push(downObj) // 构造好的“网格线”数据结构放入down
}
return down.concat(up) // 把up加在down之后,形成一个网格线价格从小到大的网格数组结构
}
Die Funktion kann separat ausgeführt werden, um die Effekte zu sehen. Die Debugging-Toolbars oder die Debugging-Systembars auf FMZ sind sehr praktisch, um diesen kleinen Code zu deaktivieren.
Sie können die erstellten Daten beobachten.
[
{"buy":false,"sell":false,"price":5},
{"buy":false,"sell":false,"price":15},
{"buy":false,"sell":false,"price":25},
{"buy":false,"sell":false,"price":35},
{"buy":false,"sell":false,"price":45},
{"buy":false,"sell":false,"price":55},
{"buy":false,"sell":false,"price":65},
{"buy":false,"sell":false,"price":75},
{"buy":false,"sell":false,"price":85},
{"buy":false,"sell":false,"price":95},
{"buy":false,"sell":false,"price":105}, // 100是起始价格,从105开始向上第一条线,间距10
{"buy":false,"sell":false,"price":115}, // ...
{"buy":false,"sell":false,"price":125},
{"buy":false,"sell":false,"price":135},
{"buy":false,"sell":false,"price":145},
{"buy":false,"sell":false,"price":155},
{"buy":false,"sell":false,"price":165},
{"buy":false,"sell":false,"price":175},
{"buy":false,"sell":false,"price":185},
{"buy":false,"sell":false,"price":195}
]
3. Analyse der Transaktionslogik
Nach der Analyse der Datenstruktur des Netzes müssen wir uns die spezifische Kauf- und Verkaufslogik der Netzstrategie ansehen. Die Kauf- und Verkaufslogik ist auch sehr einfach, wie wir in der Abbildung dargestellt haben.
Sie können auch die vorherige Abbildung verwenden.
Wenn wir sagen, dass t1 ein Augenblick ist, und t2 ein Augenblick nach t1, und wir sagen, dass wir diese Linie durch C gehen, dann müssen wir einfach sagen,P1 < C
undP2 > C
Ich bin nicht derjenige.
Also, wenn wir die Linie B durchgehen, dann müssen wir nur die Linie B durchqueren.P1 > B
undP3 < B
Das ist nicht wahr.
Und dann haben wir nur "durchsuchen" (sprachlich: durchsuchen).Einer nach dem anderenJede Zeile in einer Maschine kann einfach durchzogen werden.
Wenn man die Bewegungen der Preise auf und ab erfasst hat, kann man dann eine Transaktion abschließen, wenn diese Bewegungen ausgelöst werden? Es ist offensichtlich nicht möglich, wenn der Preis auf einer Linie wiederholt durchdringt, ist das nicht eine Wiederholung der Transaktionsgebühren in einem Preisbereich. Es gibt also eine Reihe von Kriterien für die Auslösung von Trieben und Trieben, die mit dem Buy/Sell-Tag in der gerade erstellten Gitterdatenstruktur verwendet werden.
Danke fürs Lesen, wir werden in der nächsten Folge weiterlesen und lernen.
- Ich weiß nicht.Ich verstehe den Code nicht.
- Ich weiß nicht.Warum bist du so gut?
CYZWXDas Debugging Tool und das Py sind besser.
- Ich weiß nicht.Es ist schwierig, die Transaktionen im Netz zu erledigen.
Die Erfinder quantifizieren - Kleine TräumeEs ist nicht schwierig, sich geduldig in Lehrpläne, Gemeinschaften und Bibliotheken zu informieren.