
Cette stratégie est une stratégie de trading à haute fréquence basée sur la ligne K de 3 minutes de la bourse Coinbase. Elle permet de déterminer si le prix a des chances de revenir à la hausse ou à la baisse dans un court laps de temps en calculant les courbes ascendantes et descendantes de la ligne K. Lorsque le prix augmente ou diminue de manière significative, la stratégie prend des positions contraires à la tendance, dans l’espoir d’une reprise de la courbe courte.
La stratégie consiste à déterminer si le prix a une chance de surbouleversement ou de survente à court terme. Les surbouleversements ou les surventeurs sont généralement le résultat d’un sentiment excessivement optimiste ou pessimiste sur le marché. Lorsqu’un tel déséquilibre émotionnel temporaire se produit, le prix se retourne généralement.
En particulier, la stratégie calcule la taille de l’ombre supérieure et inférieure de la ligne K. Plus l’ombre est grande, plus la résistance entre la force d’achat et la force de vente est forte lorsque la ligne K n’est pas terminée. Si l’ombre supérieure est trop grande, cela indique que de nombreuses offres ont été battues par le parallèle avant la clôture de la ligne K, ce qui indique que la force de multiples têtes est sur le point de s’effondrer. Si l’ombre inférieure est trop grande, cela indique que de nombreuses offres ont été absorbées par les acheteurs avant la clôture de la ligne K, ce qui indique que la force de vide est sur le point de s’effondrer.
Selon cette logique de jugement, la stratégie consiste à prendre une position opposée à la tendance lorsque la ligne d’ombre est trop grande (c’est-à-dire lorsque le prix est en hausse à court terme). Le prix d’arrêt pour entrer dans une position à plusieurs têtes est le prix moyen de la ligne d’ombre inférieure, le prix d’arrêt pour entrer dans une position vide est le prix moyen de la ligne d’ombre supérieure.
Le plus grand avantage de cette stratégie réside dans la fluctuation irrationnelle à court terme des marchés dynamiques, permettant un arbitrage inverse. Elle nécessite moins d’argent pour obtenir une plus grande efficacité.
L’autre avantage est que Coinbase est une plateforme très volatile. Cette stratégie exploite les fortes fluctuations de ses prix pour en tirer profit.
Le plus grand risque de cette stratégie est que les fluctuations de prix à court terme peuvent ne pas être très prévisibles. La taille de la ligne d’ombre ascendante et descendante ne peut pas nécessairement capturer toute l’information sur le renversement des prix. Les émotions irrationnelles du trader ne suivent pas nécessairement les lois de la logique.
En outre, la configuration des points de perte est également cruciale. Les points de perte trop lâches peuvent augmenter les pertes de la stratégie; les points de perte trop stricts peuvent manquer les opportunités. Il faut trouver un équilibre entre le taux de gain et le taux de gain.
Cette stratégie peut être optimisée dans les dimensions suivantes:
Cette stratégie est globalement une stratégie d’arbitrage statistique typique. Elle tente de tirer profit des fluctuations irrationnelles à court terme des prix, avec une certaine logique et viabilité. La prochaine étape peut être l’optimisation d’expériences à partir de plus de dimensions, rendant la configuration des paramètres de la stratégie et les règles de négociation plus scientifiques.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
//for coinbase, 3min logic
//This strategy trades against the short term trend. The first position can be either long or short.
//In the short term, prices fluctuate up and down on wide spread exchanges.
//And if the price moves to one side, the price tends to return to its original position momentarily.
//This strategy set stop order. Stop price is calculated with upper and lower shadows.
strategy("ndb_mm_for_coinbase_btcusd", overlay=true, initial_capital=100000, slippage=50)
fromyear = input(2019, minval = 2017, maxval = 2100, title = "From Year")
frommonth = input(12, minval = 1, maxval = 12, title = "From Month")
fromday = input(1, minval = 01, maxval = 31, title = "From day")
toyear = input(2100, minval = 1900, maxval = 2100, title = "To Year")
tomonth = input(12, minval = 01, maxval = 12, title = "To Month")
today = input(31, minval = 01, maxval = 31, title = "To day")
end = true
length = input(3, title="period")
mag = input(1.2, title="sigma", minval=0.1, step=0.1)
up_shadow = abs(high - max(open, close))
dn_shadow = abs(low - min(open, close))
up_shadow_ma = sma(up_shadow, length) * mag
dn_shadow_ma = sma(dn_shadow, length) * mag
upper = close + dn_shadow_ma
lower = close - up_shadow_ma
plot(upper, color=red)
plot(lower, color=blue)
if strategy.position_size == 0
strategy.entry("Long", strategy.long)
if 0 < strategy.position_size
strategy.entry("Short", strategy.short, stop=lower, when=end)
if 0 > strategy.position_size
strategy.entry("Long", strategy.long, stop=upper, when=end)