Cette stratégie est basée sur le corps de la bougie, combinée à l'indicateur EMA pour juger de la direction de la tendance du marché, afin d'obtenir l'effet de suivi de tendance PRIMITIVE ORIGINAL.
Cette stratégie présente les avantages suivants:
Cette stratégie comporte également des risques:
Les risques peuvent être réduits par:
Cette stratégie peut être optimisée dans les aspects suivants:
Cette stratégie appartient à la stratégie de suivi de tendance simple d'origine. En jugeant les structures de bougies, il peut effectivement suivre les directions de tendance. En même temps, la mise en place d'un mécanisme de stop loss rapide peut bloquer les bénéfices. Cette stratégie peut compléter le portefeuille de suivi de tendance, mais doit encore être optimisée pour réduire les risques. Il vaut la peine de poursuivre la recherche sur l'effet de la combinaison avec d'autres indicateurs à l'avenir.
/*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=3 strategy(title = "Noro's Primitive Strategy v1.0", shorttitle = "Primitive str 1.0", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100.0, pyramiding = 10) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") usebody = input(true, defval = true, title = "Use body") useus = input(true, defval = true, title = "Use UUP") fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year") toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(01, defval = 01, minval = 01, maxval = 12, title = "To Month") fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day") //Logic body = abs(close - open) sbody = ema(body, 30) / 2 bar = close > open ? 1 : close < open ? -1 : 0 //Signals up = bar == -1 and (body > sbody or usebody == false) and (close < strategy.position_avg_price or strategy.position_size <= 0 or useus == false) dn = bar == 1 and (body > sbody or usebody == false) and (close > strategy.position_avg_price or strategy.position_size >= 0 or useus == false) //Trading if up strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00))) if dn strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00))) if time > timestamp(toyear, tomonth, today, 00, 00) strategy.close_all()