यह सरल चलती औसत क्रॉसओवर पर आधारित एक उल्टा रणनीति है। यह 1 दिन और 5 दिन के सरल चलती औसत का उपयोग करता है। जब छोटा एसएमए लंबे एसएमए से ऊपर जाता है, तो यह लंबा हो जाता है। जब छोटा एसएमए लंबे एसएमए से नीचे जाता है, तो यह छोटा हो जाता है। यह एक विशिष्ट प्रवृत्ति के बाद की रणनीति है।
यह रणनीति समापन मूल्य के 1-दिवसीय एसएमए (एसएमए 1) और 5-दिवसीय एसएमए (एसएमए 5) की गणना करती है। जब एसएमए 1 एसएमए 5 से पार हो जाता है, तो यह एक लंबी स्थिति में प्रवेश करता है। जब एसएमए 1 एसएमए 5 से नीचे पार हो जाता है, तो यह एक छोटी स्थिति में प्रवेश करता है। एक लंबी स्थिति खोलने के बाद, स्टॉप लॉस को प्रवेश मूल्य से 5 USD नीचे और 150 USD ऊपर लाभ प्राप्त करने के लिए सेट किया जाता है। शॉर्ट पदों के लिए, स्टॉप लॉस प्रवेश से 5 USD ऊपर और लाभ 150 USD नीचे है।
यह सरल डबल एसएमए रणनीति तेजी से रणनीति सत्यापन के लिए समझने और लागू करने में आसान है। लेकिन इसमें सीमित जोखिम सहिष्णुता और लाभ क्षमता है। अधिक बाजार की स्थितियों को अनुकूलित करने के लिए मापदंडों और फिल्टर में आगे के अनुकूलन की आवश्यकता है। एक स्टार्टर क्वांट रणनीति के रूप में, इसमें पुनरावर्ती सुधार के लिए बुनियादी बिल्डिंग ब्लॉक हैं।
/*backtest start: 2023-02-19 00:00:00 end: 2024-02-19 00:00:00 period: 2d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Valeria 181 Bot Strategy Mejorado 2.21", overlay=true, margin_long=100, margin_short=100) var float lastLongOrderPrice = na var float lastShortOrderPrice = na longCondition = ta.crossover(ta.sma(close, 1), ta.sma(close, 5)) if (longCondition) strategy.entry("Long Entry", strategy.long) // Enter long shortCondition = ta.crossunder(ta.sma(close, 1), ta.sma(close, 5)) if (shortCondition) strategy.entry("Short Entry", strategy.short) // Enter short if (longCondition) lastLongOrderPrice := close if (shortCondition) lastShortOrderPrice := close // Calculate stop loss and take profit based on the last executed order's price stopLossLong = lastLongOrderPrice - 5 // 10 USDT lower than the last long order price takeProfitLong = lastLongOrderPrice + 151 // 100 USDT higher than the last long order price stopLossShort = lastShortOrderPrice + 5 // 10 USDT higher than the last short order price takeProfitShort = lastShortOrderPrice - 150 // 100 USDT lower than the last short order price // Apply stop loss and take profit to long positions strategy.exit("Long Exit", from_entry="Long Entry", stop=stopLossLong, limit=takeProfitLong) // Apply stop loss and take profit to short positions strategy.exit("Short Exit", from_entry="Short Entry", stop=stopLossShort, limit=takeProfitShort)