चलती औसत के साथ संयुक्त कुशल मात्रात्मक व्यापार रणनीति


निर्माण तिथि: 2024-02-01 15:09:06 अंत में संशोधित करें: 2024-02-01 15:09:06
कॉपी: 0 क्लिक्स: 589
1
ध्यान केंद्रित करना
1617
समर्थक

चलती औसत के साथ संयुक्त कुशल मात्रात्मक व्यापार रणनीति

अवलोकन

इस रणनीति के मुख्य रूप से 5 दिन आरएसआई सूचक और 200 दिन चलती औसत के संयोजन का उपयोग, व्यापार निर्णय संकेतों का गठन, तकनीकी सूचक पोर्टेबल रणनीति के अंतर्गत आता है. इसका मुख्य व्यापार सिद्धांत हैः जब कीमत ओवरबॉय ओवरसोल्ड क्षेत्र के लिए चला जाता है, तो संकेत बेचा जाता है; जब कीमत ओवरसोल्ड क्षेत्र के लिए गिरती है, तो संकेत खरीदा जाता है. इस रणनीति का सबसे बड़ा लाभ यह है कि रणनीति के संकेत स्पष्ट हैं, और वापस लेने का जोखिम कम है. लेकिन केवल एक तकनीकी सूचक पोर्टेबल का उपयोग करके व्यापार निर्णय बनाने की सीमाएं हैं, जिन्हें मल्टीफैक्टर मॉडल और मशीन सीखने के एल्गोरिदम आदि के माध्यम से अनुकूलित किया जा सकता है।

रणनीति सिद्धांत

यह रणनीति मुख्य रूप से 5 दिन के आरएसआई और 200-दिन की चलती औसत के संयोजन का उपयोग करती है ताकि यह निर्धारित किया जा सके कि कीमतों में ओवरबॉट और ओवरसोल्ड क्षेत्र क्या हैं, और व्यापारिक निर्णय लेने के लिएः

  1. 5 दिन आरएसआई सूचकांक का निर्धारण करता है कि कीमत चल रही है ओवरबॉय ओवरसोल क्षेत्र ओवरबॉय लाइन 72 सेट करें, ओवरसोल क्षेत्र 30 जब आरएसआई सूचकांक नीचे से ऊपर की ओर 30 को तोड़ता है तो खरीद संकेत उत्पन्न होता है; जब आरएसआई सूचकांक ऊपर से नीचे 72 को तोड़ता है, तो बेचने का संकेत उत्पन्न होता है

  2. 200-दिवसीय चलती औसत कीमतों की मध्य-लंबी प्रवृत्ति की दिशा का निर्धारण करता है। जब कीमतें 200-दिवसीय औसत से नीचे होती हैं, तो यह कीमतों के नीचे की ओर है; जब कीमतें 200-दिवसीय औसत से ऊपर होती हैं, तो यह कीमतों के ऊपर की ओर है।

  3. निर्णय 1 और 2 के संयोजन में, यह रणनीति 5 दिन के आरएसआई को ओवरबॉट करने और 72 को तोड़ने के लिए बेची जाती है और 5 दिन के आरएसआई को तोड़ने के लिए खरीदी जाती है जब यह 30 से नीचे है और 200 दिन के औसत से नीचे है।

रणनीतिक लाभ

  1. रणनीतिक संकेत अधिक स्पष्ट हैं, जो RSI सूचक Judgment क्षेत्र का उपयोग करके ओवरबॉट और ओवरसोल्ड संकेतों को निर्धारित करते हैं।

  2. 200 DAY MEAN लाइन ने बड़े रुझानों की दिशा का आकलन किया और उलटफेर से बचने की कोशिश की

  3. जोखिम को नियंत्रित करने के लिए अधिकतम होल्डिंग सेट करें

  4. रणनीति पैरामीटर अनुकूलित करने के लिए पर्याप्त जगह है, आरएसआई पैरामीटर और औसत पैरामीटर को समायोजित किया जा सकता है।

  5. कम जोखिम के साथ अधिकतम वापसी के लिए प्रभावी नियंत्रण रणनीति

रणनीतिक जोखिम

  1. केवल आरएसआई और औसत संकेतक का उपयोग करते हुए, रणनीति संकेत अस्थिर हो सकता है, और मल्टीहेड खाली सिर बाजार में उतार-चढ़ाव के कारण व्यापार और हानि का जोखिम हो सकता है।

  2. बेहतर रणनीति प्रभाव के लिए आरएसआई और औसत रेखा मापदंडों को अनुकूलित और परीक्षण करने की आवश्यकता होती है।

  3. अन्य संकेतकों या मॉडल निर्णयों को शामिल करने के लिए, रणनीति संकेतों को अनुकूलित करें। जैसे कि अस्थिरता दर संकेतकों, मशीन सीखने के निर्णयों आदि को शामिल करना।

रणनीति अनुकूलन दिशा

  1. MACD, KD, अस्थिरता दर सूचकांक, आदि जैसे सूचकांकों के अधिक संयोजनों का उपयोग करके निर्णय लें।

  2. मशीन लर्निंग मॉडल में निर्णय जोड़ें। जैसे कि एलएसटीएम ट्रेडिंग सिग्नल स्थिरता का निर्णय लेता है।

  3. मात्रात्मक कारकों को जोड़ना। जैसे कि लेनदेन की मात्रा में परिवर्तन, पूंजी प्रवाह आदि।

  4. अनुकूलन रणनीति पैरामीटर. जैसे कि आरएसआई पैरामीटर, औसत पैरामीटर आदि.

  5. गति रोकथाम, समय रोकथाम आदि।

संक्षेप

इस रणनीति में मुख्य रूप से 5 दिन के आरएसआई सूचक और 200 दिन के औसत रेखा सूचक के संयोजन का उपयोग किया जाता है ताकि कीमतों को ओवरबॉट और ओवरसोल्ड क्षेत्र का निर्धारण किया जा सके, जिससे ट्रेडिंग सिग्नल बन सके, जो तकनीकी सूचक संयोजन रणनीति के अंतर्गत आता है। रणनीति सिग्नल अपेक्षाकृत स्पष्ट है, अधिकतम वापसी का जोखिम कम है। लेकिन रणनीति की प्रभावशीलता को बढ़ाने के लिए बहु-सूचक संयोजन और मशीन सीखने जैसे निर्णयों के माध्यम से आगे अनुकूलित किया जा सकता है।

रणनीति स्रोत कोड
/*backtest
start: 2024-01-24 00:00:00
end: 2024-01-31 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// ©chewyScripts.

//@version=5
strategy("96er RSI+200EMA Strategy + Alerts", overlay=true)
// This works best on a small account $100, with 50% of equity and up to 10 max open trades. 
// 96% Profitable, turns $100 into $350 in 1 month. very few losses. super happy with it.
// So far it triples the account on a 1m chart in 1 month back testing on the SEI-USD pair.
// I did not test on FX pairs or other instruments.
// had some issues with the inputs not working so had to hard code some, also the lastClose var sometimes breaks and starts following every candle, not sure why.

in_r1 = input.int(5,"5 day input or RSI1")
in_openOrders = input.int(3,"max open orders")

in_lowerRSI = input.int(30,"RSI Lower")
in_upperRSI = input.int(72,"RSI Upper ")

in_emaperiod = input.int(200,"EMA Period")

in_buybreakout = input.int(50,"Buy breakout range")

in_buyTP = input.float(1.05,"Buy TP: 1+TP %, .05 seems to work well.")
in_sellTP = input.float(0.9850, "Sell TP: 1-TP%. .025 seems to work well. ")

simple int rsi5 = in_r1

// 3 rsi strategy , when all of them are overbought we sell, and vice versa
rsi7 = ta.rsi(close,rsi5)
lastClose = request.security(syminfo.tickerid, "D", close, lookahead = barmerge.lookahead_on)
rsi3 = ta.rsi(close[5],rsi5)

ma = ta.ema(close,in_emaperiod)

plot(rsi7,"5 Day RSI",color.red)
plot(lastClose,"Yesterdays Close",color.green)
plot(rsi3,"Previous 5th candles RSI",color.purple)


// sell condition
//sell = ta.crossunder(rsi7,70) and ta.crossunder(rsi14,70) and ta.crossunder(rsi21,70)

//buy condition
//buy = ta.crossover(rsi7,in_lowerRSI) and close < ma and rsi3 <= in_upperRSI and strategy.opentrades < in_openOrders
//sell = ta.crossunder(rsi7,in_upperRSI) and close > ma and rsi3 >= in_lowerRSI3 and strategy.opentrades < in_openOrders

buy = ta.crossover(rsi7,in_lowerRSI) and close < ma and close < lastClose and strategy.opentrades < in_openOrders
sell = ta.crossunder(rsi7,in_upperRSI) and close > ma and close > lastClose and strategy.opentrades < in_openOrders


var lastBuy = close 
var lastSell = close 

if (buy)
    strategy.entry("BUY", strategy.long)
    lastBuy := close 
    alert("Buy")

if ((close >= lastBuy*in_buyTP ) or rsi7 > in_buybreakout and close >= lastClose and (close >= lastClose*in_buyTP or close >= lastBuy*in_buyTP ) )
    strategy.close("BUY", "BUY Exit")
    alert("Buy Exit")
    
if (sell)
    strategy.entry("SELL", strategy.short)
    lastSell := close 
    alert("Sell")

if ( close < ma and (close <= lastSell*in_sellTP ) or (close < lastClose*in_sellTP) )
    strategy.close("SELL", "Sell Exit")
    alert("Sell Exit")