
औसत रेखा क्रॉसिंग रणनीति एक ट्रेडिंग रणनीति है जो एक चलती औसत रेखा पर आधारित है। यह तेजी से चलती औसत रेखा और धीमी गति से चलती औसत रेखा के क्रॉसिंग का उपयोग करता है जो एक खरीद और बेचने के संकेत के रूप में कार्य करता है। यह एक खरीद संकेत उत्पन्न करता है जब तेज औसत रेखा धीमी औसत रेखा को नीचे से तोड़ती है; जब तेज औसत रेखा धीमी औसत रेखा को नीचे से तोड़ती है, तो यह एक बेचने का संकेत उत्पन्न करती है।
इस रणनीति में SMA फ़ंक्शन का उपयोग किया जाता है, जो एक निर्दिष्ट अवधि के लिए एक सरल चलती औसत की गणना करता है, जो एक तेज औसत और एक धीमी औसत के रूप में कार्य करता है। रणनीति की डिफ़ॉल्ट तेज औसत अवधि 18 दिन है, जिसे पैरामीटर द्वारा समायोजित किया जा सकता है।
क्रॉसओवर फ़ंक्शन का उपयोग क्रॉस सिग्नल का पता लगाने के लिए किया जाता है, जो एक खरीद संकेत उत्पन्न करता है। क्रॉसओवर फ़ंक्शन का उपयोग क्रॉस सिग्नल का पता लगाने के लिए किया जाता है, जो एक बेच संकेत उत्पन्न करता है।
रणनीति ट्रैक सिग्नल और एग्जिट सिग्नल के माध्यम से स्वचालित ट्रेडिंग को लागू करती है। मल्टीहेड इनपुट तब ट्रिगर किया जाता है जब तेज औसत रेखा नीचे से धीमी औसत रेखा को तोड़ती है; खाली हेड इनपुट तब ट्रिगर किया जाता है जब तेज औसत रेखा ऊपर से धीमी औसत रेखा को तोड़ती है। इसी तरह के एग्जिट सिग्नल भी रिवर्स क्रॉसिंग पर उत्पन्न होते हैं।
समानांतर क्रॉसिंग रणनीति एक अधिक क्लासिक और सरल ट्रेंड ट्रैकिंग रणनीति है। यह मुख्य रूप से ट्रेडिंग सिग्नल के रूप में समानांतर क्रॉसिंग का उपयोग करता है, सिद्धांत सरल, सीधा और आसानी से समझने योग्य है, और पैरामीटर को बाजार के अनुकूल करने के लिए समायोजित किया जा सकता है। लेकिन कुछ कमियां भी हैं, जैसे कि झटके और रुझान परिवर्तन के प्रभाव के लिए अतिसंवेदनशीलता, लगातार संकेत, आदि। इन समस्याओं को फ़िल्टर, पैरामीटर को गतिशील रूप से समायोजित करने, स्टॉप लॉस आदि को जोड़कर सुधार किया जा सकता है। इस रणनीति में व्यापक अनुकूलन स्थान और दिशा है और यह मात्रात्मक व्यापार की बुनियादी रणनीतियों में से एक है।
/*backtest
start: 2023-11-15 00:00:00
end: 2023-11-17 04:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title = "MA Close Strategy", shorttitle = "MA Close",calc_on_order_fills=true,calc_on_every_tick =true, initial_capital=21000,commission_value=.25,overlay = true,default_qty_type = strategy.percent_of_equity, default_qty_value = 100)
MASource = input(defval = open, title = "MA Source")
MaLength = input(defval = 18, title = "MA Period", minval = 1)
StartYear = input(2018, "Backtest Start Year")
StartMonth = input(1, "Backtest Start Month")
StartDay = input(1, "Backtest Start Day")
UseStopLoss = input(true,"UseStopLoss")
stopLoss = input(50, title = "Stop loss percentage(0.1%)")
window() => time >= timestamp(StartYear, StartMonth, StartDay,00,00) ? true : false
MA = sma(MASource,MaLength)
plot(MA, title = "Fast MA", color = green, linewidth = 2, style = line, transp = 50)
long = crossunder(MA, close)
short = crossover(MA, close)
if (long)
strategy.entry("LongId", strategy.long, when = long)
strategy.exit("ExitLong", from_entry = "LongId", when = short)
if (short)
strategy.entry("ShortId", strategy.short, when = short)
strategy.exit("ExitShort", from_entry = "ShortId", when = long)
if (UseStopLoss)
strategy.exit("StopLoss", "LongId", loss = close * stopLoss / 1000 / syminfo.mintick)
strategy.exit("StopLoss", "ShortId", loss = close * stopLoss / 1000 / syminfo.mintick)