avatar of 发明者量化-小小梦 发明者量化-小小梦
konzentrieren Sie sich auf Private Nachricht
4
konzentrieren Sie sich auf
1271
Anhänger

Neulinge im quantitativen Handel in Kryptowährungskreisen, schauen Sie sich bitte dies an - Wir bringen Sie dem quantitativen Handel in Kryptowährungskreisen näher (Teil 4)

Erstellt in: 2021-05-24 09:55:03, aktualisiert am: 2024-12-04 21:26:28
comments   6
hits   2321

Neulinge im quantitativen Handel in Kryptowährungskreisen, schauen Sie sich bitte dies an - Wir bringen Sie dem quantitativen Handel in Kryptowährungskreisen näher (Teil 4)

Neulinge im quantitativen Handel in Kryptowährungskreisen, schauen Sie sich bitte dies an - Wir bringen Sie dem quantitativen Handel in Kryptowährungskreisen näher (Teil 4)

In den vorherigen Artikeln haben wir viele grundlegende Konzepte zu Kryptowährungen, programmatischem und quantitativem Handel kennengelernt. Schließlich können wir zur Sache kommen und über die Strategie selbst sprechen. In diesem Artikel lernen wir, eine einfache Strategie umzusetzen. Was die [Grid-Strategie] betrifft, sollte jeder, der im Handel tätig ist, davon gehört haben. Es macht nichts, wenn Sie noch nicht davon gehört haben.BörsenSie alle haben ihre eigenen programmatischen und quantitativen Handelsfunktionen eingeführt. Die gängigste und am einfachsten zu verwendende Strategie istNetzstrategie. Die von den einzelnen Börsen bereitgestellten Funktionen und Details der Grid-Strategie sind jedoch unterschiedlich. Da Sie planen, in den quantitativen Kryptowährungskreis einzusteigen. Warum setzen wir nicht selbst eine Netzstrategie um?

Zu diesem Zeitpunkt sagen einige Studenten vielleicht: „Ich kann keinen Code schreiben!“ „Sehen Sie, der Codekopf ist groß!“

Das stimmt sicherlich. Für Studierende, die kein Computersoftware-Hauptfach studieren und keine Programmiererfahrung haben, ist es tatsächlich ziemlich schwierig, selbst eine vollständige Handelsstrategie zu entwickeln. Denn Sie müssen eine Reihe von Vorarbeiten erledigen, angefangen mit der Verbindung zur Börsenschnittstelle (vielleicht ist Ihr Handelslogikprogramm nur 100 Zeilen lang, aber es gibt eine Menge anderer Codierungsarbeiten zu erledigen, und das ist schwieriger als das Schreiben der Handelslogik). )

Wenn Sie über ein praktisches Werkzeug verfügen, ist es zu diesem Zeitpunkt ganz einfach, zumindest verringert sich der Schwierigkeitsgrad um 70 %. Sie können sich vorstellen, wie bequem und schnell es wäre, wenn Sie nur die Transaktionslogik selbst schreiben würden und andere Funktionen wie das Andocken der Austauschschnittstelle, die Signaturüberprüfung, Konfigurationsdateien, die Erstellung einer Betriebsumgebung, das Schreiben der Benutzeroberfläche und das Schreiben der Interaktion bereits vorgefertigt wären. .

Sie glauben es nicht? Lass es uns versuchen!

Implementierung einer einfachen Spot-Grid-Strategie

Das von uns verwendete Tool ist: Inventor Quantitative Trading Platform (FMZ.COM). Der Kern der Netzstrategiegestaltung besteht eigentlich in der Logik des Netzkaufs und -verkaufs. Dies muss also vor der Gestaltung der Strategie geklärt werden. Unser Ziel besteht darin, die Strategie einfach und leicht verständlich zu gestalten. Je weniger Parameter und je einfacher die Logik, desto besser.

Hier ist der grundlegende Prozess zum Entwerfen einer Strategie:

  • 1. Zusammenfassung der Strategieanforderungen

Einfach ausgedrückt ist dies, was Ihre Strategie tun wird, wie sie getan wird, welche Funktionen sie haben wird usw. Diese Informationen können in einem Dokument (z. B. einem Notizblock) geschrieben werden, bevor Sie tatsächlich die Strategiecode. Es ist sehr einfach, auf FMZ Strategien zu entwickeln. Die Plattform hat Lösungen für diese Anforderungen für Sie vorbereitet, und ich muss diese Anforderungen nicht in ein Notizbuch schreiben (was nicht sehr bequem zu verwalten ist). Die Strategieanforderungen notiere ich direkt in den Strategienotizen.

Neulinge im quantitativen Handel in Kryptowährungskreisen, schauen Sie sich bitte dies an - Wir bringen Sie dem quantitativen Handel in Kryptowährungskreisen näher (Teil 4)

Denken Sie daran, die Strategie nach dem Schreiben zu speichern. Anschließend schreiben wir die Strategieanforderungen (Strategieanforderungen sind nicht festgelegt und können während der Entwicklung aufgezeichnet werden).

  • Die Strategie ist als Spot-Trading-Strategie konzipiert und das Handelspaar istXXX_USDT,Zum Beispiel:BTC_USDT

  • Das Raster ist so angelegt, dass es gleichmäßige Abstände aufweist. Dies bedeutet einfach, dass der Abstand zwischen zwei benachbarten Punkten auf dem Raster eine feste Spanne ist.

  • Das Raster ist als unendliches Raster konzipiert, das unendlich erweitert werden kann.

  • Bei der Auftragserteilung wird eine Marktorder verwendet.

    1. Rasterdatenstruktur konstruieren:

Bei unklaren Vorstellungen können wir zunächst Bilder zur Analyse zeichnen.

Neulinge im quantitativen Handel in Kryptowährungskreisen, schauen Sie sich bitte dies an - Wir bringen Sie dem quantitativen Handel in Kryptowährungskreisen näher (Teil 4)

Sie können den Startpreis als Basispunkt verwenden, um Gitter sowohl in oberer als auch in unterer Richtung zu konstruieren. Das sogenannte Grid ist eine Schicht aus Kauflinien und Verkaufslinien. Aus dem Diagramm können wir ersehen, dass jede Linie zwei Möglichkeiten hat: 1. Die Preise steigen. 2. Die Preise fallen. Das Überschreiten des Preises nach oben zeigt an, dass der Preis steigt und Sie verkaufen müssen. Anschließend müssen Sie warten, bis der Preis wieder fällt, und dann zurückkaufen, um einen Gewinn zu erzielen. Eine Preisdurchdringung nach unten zeigt an, dass der Preis sinkt und Sie kaufen und dann warten müssen, bis der Preis steigt, und mit Gewinn verkaufen können. Daher gibt es für jede Gitterlinie zwei Handelsmethoden: Kaufen und Verkaufen. Und jede Gitterlinie hat eine inhärente Eigenschaft, nämlich den durch diese Linie markierten Preis. Beispielsweise die Darstellung von A/B/C/D in der Abbildung. Wenn wir eine Strategie entwerfen, müssen wir zunächst verstehen, was wir tun wollen.Was, und dann wird es bequem sein, es zu tun.

Schreiben Sie eine Funktion zum Erstellen einer Rasterdatenstruktur:

  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之后,形成一个网格线价格从小到大的网格数组结构
  }

Sie können diese Funktion alleine ausführen, um die Wirkung zu sehen. Das [Debugging-Tool] oder [Backtesting-System] auf FMZ sind zum Debuggen solch kleiner Codes sehr praktisch.

Neulinge im quantitativen Handel in Kryptowährungskreisen, schauen Sie sich bitte dies an - Wir bringen Sie dem quantitativen Handel in Kryptowährungskreisen näher (Teil 4)

Die erstellten Daten können eingesehen werden.

  [
      {"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

Nachdem wir die Datenstruktur des Rasters analysiert haben, müssen wir die spezifische Kauf- und Verkaufslogik der Rasterstrategie berücksichtigen. Tatsächlich ist die Kauf- und Verkaufslogik auch sehr einfach. Wir haben sie im obigen Bild dargestellt. Kaufen bedeutet, eine bestimmte Linie zu unterschreiten, und Verkaufen bedeutet, eine bestimmte Linie zu überschreiten. Wie drücken Sie also das Tragen von Ober- und Unterteil aus? Es ist auch sehr einfach. Wir müssen nur die Preispositionen zu zwei Zeitpunkten vergleichen, um ein Urteil zu fällen.

Verwenden wir das vorherige Bild.

Neulinge im quantitativen Handel in Kryptowährungskreisen, schauen Sie sich bitte dies an - Wir bringen Sie dem quantitativen Handel in Kryptowährungskreisen näher (Teil 4)

t1 ist ein Moment, t2 ist ein Moment nach t1. Um das Überqueren der Linie C zu beurteilen, müssen wir nur beurteilenP1 < CUndP2 > C。 Um die Kreuzung der Linie B zu beurteilen, müssen wir nur beurteilenP1 > BUndP3 < B。 Zu diesem Zeitpunkt müssen wir nur durchqueren (Durchquerung wird allgemein alsSchauen Sie sie sich einzeln an) Bestimmen Sie für jede Linie im Gitterfeld einfach, ob sie oben oder unten kreuzt. Ist es nicht einfach?

Wenn wir feststellen, dass der Preis nach oben oder unten kreuzt, können wir dann Aufträge erteilen, wenn diese Aktionen ausgelöst werden? Dies ist natürlich definitiv nicht möglich. Wenn der Preis auf einer Linie wiederholt steigt und fällt, würde das dann nicht bedeuten, dass Sie Transaktionsgebühren verbrennen, indem Sie wiederholt zum gleichen Preis handeln? Daher gibt es noch eine Reihe von Beurteilungsbedingungen zum Auslösen der Aufwärts- und Abwärtskreuzung, die die Verwendung der Kauf- / Verkaufs-Tags in der soeben erstellten Gitterlinien-Datenstruktur erfordern (zum Beispiel: {“buy”:false,“sell “:false,“Preis”:5}).

Vielen Dank fürs Lesen. In der nächsten Ausgabe werden wir weiter erklären und lernen.