
इस रणनीति में एक पक्षी ट्रेडिंग विधि की अवधारणा को निको बेकर्स के चरण विश्लेषण के साथ जोड़ा गया है, जो तीन अलग-अलग चक्रों की चलती औसत का उपयोग करके प्रवृत्ति की दिशा का आकलन करता है, जिससे प्रवृत्ति को ट्रैक करने के लिए लाभ होता है। जब तेज चलती औसत पर मध्यम चलती औसत से गुजरती है और तीनों चलती औसत एक ही उछाल या गिरावट की प्रवृत्ति में होते हैं, तो अधिक करें; जब तेज चलती औसत मध्यम चलती औसत से गुजरती है और तीनों चलती औसत एक ही उछाल या गिरावट की प्रवृत्ति में होते हैं, तो शून्य करें।
तीन अलग-अलग चक्रों के लिए चलती औसत की गणना करेंः तेज चलती औसत की अवधि 8 दिन, मध्यम चलती औसत की अवधि 21 दिन और धीमी चलती औसत की अवधि 55 दिन है।
प्रवेश की शर्तों को निर्धारित करने के लिएः जब तेज चलती औसत पर मध्यम चलती औसत से गुजरता है, और तीनों चलती औसत ऊपर की ओर बढ़ रहे हैं, तो अधिक करें; जब तेज चलती औसत के नीचे मध्यम चलती औसत से गुजरता है, और तीनों चलती औसत नीचे की ओर बढ़ रहे हैं, तो खाली करें।
बाहर निकलने की शर्तेंः तेजी से चलती औसत को पीछे की ओर से मध्यम गति से चलने वाली औसत को पार करने पर बराबरी की स्थिति।
स्थिति नियंत्रणः एक निश्चित स्थिति के साथ, हर बार जब आप एक स्थान खोलते हैं, तो आप एटीआर गतिशीलता के अनुसार स्थिति को समायोजित करने का विकल्प भी चुन सकते हैं।
तीन चलती औसत का उपयोग करने से प्रवृत्ति की दिशा का आकलन करने में मदद मिलती है और झूठे ब्रेक से बचा जाता है।
ट्रेंड ट्रैक करें, लाभ की संभावनाएं हैं।
चलती औसत के साथ, लाभ स्थिर है, और वापसी अपेक्षाकृत छोटी है।
एक नियंत्रित स्टॉप लॉस रणनीति जो बड़े नुकसान की संभावना को कम करती है।
छोटे नुकसान की संभावना, लाभप्रदता में कमी।
चलती औसत में देरी के कारण, यह रुझान के मोड़ से चूक सकता है।
स्थिर स्थिति जोखिम को प्रभावी ढंग से नियंत्रित नहीं कर सकती है, और बड़े पैमाने पर बाजार में उतार-चढ़ाव के मामले में स्थिति में विस्फोट हो सकता है।
अनुचित पैरामीटर अनुकूलन के परिणामस्वरूप अधिक बार खुले और खुले स्थानों में प्रवेश होता है, जिससे ट्रेडिंग शुल्क और स्लाइड पॉइंट हानि बढ़ जाती है।
चलती औसत के आवधिक पैरामीटर को अनुकूलित करें ताकि यह ट्रेडिंग किस्मों की विशेषताओं के अनुरूप हो।
एटीआर गतिशील समायोजन स्थिति लागू करें।
स्टॉप लॉस रणनीति में शामिल हों
ट्रेड वॉल्यूम के साथ ट्रेंड की विश्वसनीयता का आकलन करें।
इस रणनीति में पारंपरिक तकनीकी विश्लेषण सूचकांक और कछुए के व्यापार के सिद्धांतों को एकीकृत किया गया है, तीन चलती औसत का उपयोग करके ट्रेंड को ट्रैक किया जाता है, और यदि पैरामीटर अनुकूलित हैं, तो बेहतर लाभप्रदता प्राप्त की जा सकती है। हालांकि, इस रणनीति में कुछ जोखिम भी हैं, जोखिम को नियंत्रित करने के लिए स्टॉपलॉस और पोजीशन मैनेजमेंट जैसे उपायों को जोड़ने की आवश्यकता है, ताकि दीर्घकालिक स्थिर लाभप्रदता प्राप्त की जा सके।
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// LOVE JOY PEACE PATIENCE KINDNESS GOODNESS FAITHFULNESS GENTLENESS SELF-CONTROL
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © JoshuaMcGowan
//@version=4
// 1. Define strategy settings
strategy(title="Triple Moving Average", overlay=true,
pyramiding=0, initial_capital=1000,
commission_type=strategy.commission.cash_per_order,
commission_value=4, slippage=2)
fastMALen = input(title="Fast MA Length", type=input.integer, defval=8)
medMALen = input(title="Medium MA Length", type=input.integer, defval=21)
slowMALen = input(title="Slow MA Length", type=input.integer, defval=55)
//endMonth = input(title="End Month Backtest", type=input.integer, defval=11)
//endYear = input(title="End Year Backtest", type=input.integer, defval=2019)
// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 12, title = "From Month", minval = 1, maxval = 12)
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear = input(defval = 2016, title = "From Year", minval = 2017)
ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear = input(defval = 9999, title = "To Year", minval = 2017)
// === FUNCTION EXAMPLE ===
start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window
window() => true
usePosSize = input(title="Use Position Sizing?", type=input.bool, defval=true)
riskPerc = input(title="Risk %", type=input.float, defval=0.5, step=0.25)
// 2. Calculate strategy values
fastMA = sma(close, fastMALen)
medMA = sma(close, medMALen)
slowMA = sma(close, slowMALen)
//Position Sizing
riskEquity = (riskPerc / 100) * strategy.equity
atrCurrency = (atr(20) * syminfo.pointvalue)
posSize = usePosSize ? floor(riskEquity / atrCurrency) : 1
//Backtest Window
//tradeWindow = (time <= timestamp(endYear, endMonth, 1, 0, 0))
// 3. Determine long trading conditions
enterLong = crossover(fastMA, medMA) and
(fastMA > slowMA) and (medMA > slowMA) and
window()
exitLong = crossunder(fastMA, medMA)
// 4. Code short trading conditions
enterShort = crossunder(fastMA, medMA) and
(fastMA < slowMA) and (medMA < slowMA) and
window()
exitShort = crossover(fastMA, medMA)
// 5. Output strategy data
plot(series=fastMA, color=color.green, title="Fast MA")
plot(series=medMA, color=color.purple, title="Medium MA")
plot(series=slowMA, color=color.red, title="Slow MA",
linewidth=2)
bgColour =
enterLong and (strategy.position_size < 1) ? color.green :
enterShort and (strategy.position_size > -1) ? color.red :
exitLong and (strategy.position_size > 0) ? color.lime :
exitShort and (strategy.position_size < 0) ? color.orange :
na
bgcolor(color=bgColour, transp=85)
// 6. Submit entry orders
if (enterLong)
strategy.entry(id="EL", long=true, qty=1)
if (enterShort)
strategy.entry(id="ES", long=false, qty=1)
// 7. Submit exit orders
strategy.close_all(when=exitLong and
(strategy.position_size > 0))
strategy.close_all(when=exitShort and
(strategy.position_size < 0))
strategy.close_all(when=not window())
//END