Stratégie de négociation de taux de fractionnement quantitatif

Auteur:La bonté, Créé: 2020-07-29 11:42:43, Mis à jour: 2023-10-25 19:55:14

img

À propos de nous

Nous sommes une équipe qui s'est engagée à rechercher des stratégies de trading quantitatives depuis longtemps.

L'année dernière, nous avons obtenu d'excellents résultats dans le concours quantitatif Tokeninsight.

Merci à la communauté FMZ de nous avoir fourni une telle plateforme. Afin de mieux soutenir la construction de communautés quantitatives, le concept de conception et les idées de conception de cette stratégie sont maintenant publiés ici. J'espère que vous pouvez apprendre la conception et l'application du trading quantitatif.

L'origine de la stratégie de négociation quantitative des taux

L'inspiration pour le système de taux de frappe quantitative provient principalement de la physique

La définition de la vitesse en physique est: la distance parcourue par unité de temps. Si vous considérez le prix comme distance, alors sur le marché financier, la définition de la vitesse est la taille de la variation de prix par unité de temps.

Si le prix change beaucoup en un temps unitaire, un tel marché est généralement appelé un marché rapide; si les changements de prix en un temps unitaire sont petits, un tel marché est appelé un marché lent. Par conséquent, la vitesse est une loi naturelle qui intègre le temps et le prix. Une compréhension profonde de la vitesse peut nous aider à comprendre le marché dans une plus grande mesure.

Si le taux augmente, cela signifie que l'énergie augmente et peut effectivement prédire la tendance à la hausse du marché.

Si le taux chute, cela signifie une panne d'énergie et le risque de conditions de marché stables ou en baisse peut être perçu.

Chaque transaction utilise un certain nombre de lots pour la transaction, c'est pourquoi on l'appelle un système de négociation de taux de type quantitatif.

Connaissances à préparer

Prix le plus élevé (HHV): Le prix le plus élevé atteint au cours d'une période donnée. Prix le plus bas (LLV): Le prix le plus bas atteint au cours d'une période donnée. La valeur de l'indice de change est la valeur de l'indice de change de l'indice de change. Pente de régression (SLOPE): Pente d'une régression linéaire avec une période spécifique.

La formule de pente de l'équation linéaire OLS est la suivante:

img

La formule mathématique est très compliquée, mais la plateforme FMZ a déjà écrit la formule grammaticale (SLOPE) du langage M pour nous.

On peut voir que l'algorithme est le suivant:

  • Piste de dénivelé

img

Le processus est un peu plus compliqué, mais tout le monde n'a pas à y penser.

Conception de l'indicateur

  1. Calculer les prix les plus élevés et les plus bas dans une certaine période de temps
  2. Prenons la moyenne de ces deux prix
  3. Calculer une ligne moyenne mobile sur la moyenne
  4. Trouver la pente de régression de la moyenne mobile
len:=35;//Design cycles

hh^^HHV(H,len);//Take the highest price in a certain period
ll^^LLV(L,len);//Take the lowest price in a certain period
hl2^^(hh+ll)/2;//Average of highest price and lowest price
avg^^MA(hl2,5);//Calculate the moving average line of the average

ss:SLOPE(avg,len);//Calculate the regression slope of the moving average line

Grâce à la conception des indicateurs, nous pouvons voir que dans le graphique principal, nous avons le point le plus élevé (ligne jaune), le point le plus bas (ligne verte), leur moyenne (ligne rouge), et la moyenne mobile de prix lissée calculée par la ligne rouge (ligne violette épaisse)

img

Ensuite, nous pouvons calculer la pente de régression ss dans la figure ci-jointe, qui représente le taux de hausse et de baisse de la moyenne mobile.

img

Conception de la stratégie de négociation

Comme on peut le voir sur la figure ci-dessus, les flèches vertes indiquent les points d'inflexion à la pente la plus basse, et les flèches orange indiquent les points d'inflexion à la pente la plus élevée.

La réaction le long du graphique est sur la ligne k, et l'affaiblissement de la hausse et l'affaiblissement de la baisse peuvent également être clairement ressentis.

Si vous achetez et vendez au point d'inflexion, vous pouvez effectuer efficacement le trading au début, au lieu de courir après la hausse ou la baisse au point le plus élevé ou le plus bas.

  • L'idée de conception est la suivante:

La pente ascendante signifie que la dynamique du marché augmente, ce qui peut arrêter de baisser ou commencer à augmenter. La baisse continue de la pente signifie que la dynamique du marché est faible et peut cesser de monter ou commencer à descendre.

La conception et l'expression utilisant le langage M sont les suivantes:

len:=35;//Design cycles

hh^^HHV(H,len);//Take the highest price in a certain period
ll^^LLV(L,len);//Take the lowest price in a certain period
hl2^^(hh+ll)/2;//Average of highest price and lowest price
avg^^MA(hl2,5);//Calculate the moving average line of the average

ss:SLOPE(avg,len);//Calculate the regression slope of the moving average line


ss<REF(ss,1),SPK;//When the slope becomes smaller, it indicates that the market momentum is weakened, close long positions and open short positions.
ss>REF(ss,1),BPK;//When the slope becomes larger, it indicates that the market momentum is enhanced, close short positions and open long positions.
AUTOFILTER;

Retour en arrière et résumé

De cette façon, nous avons terminé la conception de cet algorithme, et ensuite nous utiliserons le système pour tester la situation pendant un an.

L' objet est le contrat trimestriel btc de okex;

La période de backtest est du 1er janvier 2019 à nos jours et la période de temps est d'une heure;

3 btc pour le compte initial, frais de traitement de 0,05%;

Définir un nombre fixe de 200 lots par transaction.

img

Il ressort de l'expérience antérieure que ces revenus sont relativement stables et stables.

Dans ce backtest, 1261 transactions ont été effectuées tout au long de l'année; Résultat estimé de 4,68 crypto-monnaie; Le revenu annualisé est d'environ 140%; Le recours maximal est de 14%; Le rapport Sharpe est de 0,117.

Partage du code source

Cliquez pour aller à la stratégie de copiehttps://www.fmz.com/strategy/183416

Le partage ci-dessus est quelques idées et le contenu de ma conception, ce qui suit est l'ensemble du code du langage M, Si vous avez besoin d'une réimpression, veuillez indiquer la source.

len:=35;//Design cycles

hh^^HHV(H,len);//Take the highest price in a certain period
ll^^LLV(L,len);//Take the lowest price in a certain period
hl2^^(hh+ll)/2;//Average of highest price and lowest price
avg^^MA(hl2,5);//Calculate the moving average line of the average

ss:SLOPE(avg,len);//Calculate the regression slope of the moving average line


ss<REF(ss,1),SPK;//When the slope becomes smaller, it indicates that the market momentum is weakened, close long positions and open short positions.
ss>REF(ss,1),BPK;//When the slope becomes larger, it indicates that the market momentum is enhanced, close short positions and open long positions.
AUTOFILTER;

Relationnée

Plus de