Stratégie de suivi du moment

Auteur:ChaoZhang est là., Date: 2023-11-23 13:47:02 Je vous en prie.
Les étiquettes:

img

Résumé

Cette stratégie utilise la taille du corps des chandeliers et l'indicateur de dynamique de tendance EMA pour déterminer les tendances du marché et mettre en œuvre le trading automatisé pour acheter bas et vendre haut.

La logique de la stratégie

  1. Classifiez les chandeliers en miettes, petites bougies et grandes bougies en fonction de la taille du corps.
  2. Quand l'EMA est en hausse, si une grande bougie rouge apparaît, cela indique une correction du marché.
  3. Lorsque l'EMA est en baisse, si une grande bougie verte apparaît, cela signifie que le marché se stabilise.
  4. Ajustez dynamiquement les positions en fonction de la surveillance en temps réel des changements de candelabre et des tendances de l'EMA.

Analyse des avantages

  1. L'idée de stratégie est simple et facile à comprendre en jugeant la structure du marché à travers des indicateurs simples.
  2. La stratégie a peu de paramètres et n'est pas sujette à un surajustement, ce qui donne une grande stabilité.
  3. Il met en œuvre la logique consistant à acheter à bas prix et à vendre à prix élevé et génère des bénéfices notables lors de fluctuations importantes du marché.
  4. Elle prend en compte à la fois les tendances et les renversements et peut réagir rapidement aux changements des conditions du marché.

Risques et optimisation

  1. Il ne tient pas compte de l'amplitude absolue des prix des actifs, ce qui peut entraîner des risques de stop-loss.
  2. Il ne prend pas en compte l'émission de base des crypto-monnaies et peut être testé sur plus de paires de négociation.
  3. Des algorithmes d'apprentissage automatique peuvent être introduits pour aider à juger des modèles de chandeliers.
  4. Les indicateurs de volume de négociation peuvent être utilisés pour détecter les variétés.
  5. Des réglages de paramètres de temps différents peuvent être testés.

Conclusion

L'idée générale de cette stratégie est simple et facile à comprendre, avec momentum et tracking comme ses principales caractéristiques. Elle détermine la direction principale du marché à travers l'indicateur simple EMABOLL et utilise des corps de chandeliers pour juger des ajustements locaux, réalisant un trading efficace en achetant bas et en vendant haut.


/*backtest
start: 2023-10-23 00:00:00
end: 2023-11-22 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
//Author @divonn1994

strategy(title='Trend Follower Strategy v2 [divonn1994]', shorttitle='TrendFollowStrategyV2', overlay=false, pyramiding=0, default_qty_value=100, default_qty_type=strategy.percent_of_equity, precision=7, currency=currency.USD, commission_value=0.1, commission_type=strategy.commission.percent, initial_capital=100)

//Important Constants for Classifying Candle Size----------------------------------------------------------------------------------------------------------------------------------------------

timesBigger = 2
crumbSize = 1400
crumbSize2 = 2100
bigCandleSize = 3800

//Key Alerts and Classifications of Candle Size and EMAs---------------------------------------------------------------------------------------------------------------------------------------

emaAlert = ta.ema(close, 8) > ta.ema(open, 8) ? 1 : 0 
CandleSize = close * 1 - open * 1
previousCandleSize = close[1] * 1 - open[1] * 1
greenCandle = close > open ? 1 : 0
previousGreenCandle = close[1] > open[1] ? 1 : 0

crumb = (greenCandle==1 and CandleSize<=crumbSize) or (greenCandle==0 and -CandleSize<=crumbSize) ? 1 : 0
bigCrumb = (greenCandle==1 and CandleSize<=crumbSize2 and CandleSize>crumbSize) or (greenCandle==0 and -CandleSize<=crumbSize2 and -CandleSize>crumbSize) ? 1 : 0
previousCandleIsSmallCrumb = (previousGreenCandle==1 and previousCandleSize<=crumbSize) or (previousGreenCandle==0 and -previousCandleSize<=crumbSize) ? 1 : 0
previousCandleIsBigCrumb = (previousGreenCandle==1 and previousCandleSize<=crumbSize2 and previousCandleSize>crumbSize) or (previousGreenCandle==0 and -previousCandleSize<=crumbSize2 and -previousCandleSize>crumbSize) ? 1 : 0

bigCandle = (greenCandle==1 and previousCandleIsBigCrumb==1 and CandleSize>=math.abs(timesBigger*previousCandleSize)) or (greenCandle==1 and previousCandleIsSmallCrumb==1 and CandleSize>=bigCandleSize) or (greenCandle==1 and previousCandleIsSmallCrumb==0 and previousCandleIsBigCrumb==0 and CandleSize>=math.abs(timesBigger*previousCandleSize)) ? 1 : 0

//Engine (Secret Sauce)------------------------------------------------------------------------------------------------------------------------------------------------------------------------

buy = (crumb==0 and bigCrumb==0 and greenCandle==0) or (greenCandle==1 and bigCandle==1) or (emaAlert==0) ? 0 : 1

//Strategy-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

if ta.crossover(buy, 0.5)
    strategy.entry('long', strategy.long, comment='long')
if ta.crossunder(buy, 0.5)
    strategy.close('long')

//Plot Strategy Behavior-----------------------------------------------------------------------------------------------------------------------------------------------------------------------

plot(buy, color=color.new(color.silver, 0))
plot(0.5, color=color.new(color.fuchsia, 0))

Plus de