
इस रणनीति को तरलता संचालित प्रवृत्ति रणनीति कहा जाता है, जिसका उद्देश्य विभिन्न समय अवधि में मूल्य प्रवृत्ति की दिशा की पहचान करना है और तदनुसार खरीद या बेचने का निर्णय लेना है। यह रणनीति द्वि-समानता प्रणाली का उपयोग करके प्रवृत्ति का आकलन करती है और कई समय फ़्रेमों पर मूल्य अंतर के सापेक्ष शक्ति सूचकांक का उपयोग करके प्रवृत्ति में बदलाव पर समय पर प्रतिक्रिया करती है।
इस रणनीति का मुख्य तर्क CHOP सूचकांक पर आधारित है, जिसमें चलती औसत प्रणाली बड़े रुझानों की दिशा का निर्धारण करती है। विशेष रूप से, रणनीति उच्च चक्र समय सीमा पर तेजी की रेखा (लंबाई = 20) और धीमी रेखा (लंबाई = 50) के आरएसआई मानों की गणना करती है, और दोनों के अंतर की गणना करती है। जब तेजी आरएसआई पर धीमी रेखा आरएसआई को पार करती है, तो इसे एक बहुसंकेत के रूप में माना जाता है; इसके विपरीत, तेजी आरएसआई नीचे धीमी रेखा आरएसआई को पार करती है, एक शून्य संकेत के रूप में। कीमतों में उतार-चढ़ाव के आधार पर आरएसआई के अंतर के आधार पर, एक संवेदनशील स्थान पर प्रवृत्ति परिवर्तन का निर्धारण किया जा सकता है।
इस रणनीति में बहु-समय फ़्रेम निर्धारण की भी शुरुआत की गई है: एक उच्च-स्तरीय चक्र (जैसे सूर्य रेखा) में आरएसआई अंतर की गणना करने के लिए समग्र प्रवृत्ति दिशा का निर्णय लेने के लिए; एक उच्च-स्तरीय चक्र के निर्णय के आधार पर, एक निम्न-स्तरीय चक्र (जैसे 5 मिनट की रेखा) में विशिष्ट खरीद और बिक्री निष्पादन। इस बहु-समय फ़्रेम के संयोजन ने उच्च-चक्र प्रवृत्ति निर्णय को ध्यान में रखा और कम-चक्र संचालन की लचीलापन को भी ध्यान में रखा।
समाधान:
इस रणनीति में RSI अंतर का उपयोग किया जाता है ताकि संभावित रुझान परिवर्तनों का आकलन किया जा सके, जिससे टर्नओवर को संवेदनशील रूप से पकड़ लिया जा सके। बहु-समय फ़्रेम का उपयोग न केवल बड़े रुझानों का आकलन करने के लिए किया जाता है, बल्कि विशिष्ट खरीद-बिक्री संचालन को अधिक लचीला बनाता है। अन्य प्रवृत्ति ट्रैकिंग रणनीतियों की तुलना में, यह रणनीति अधिक सरल, प्रत्यक्ष, पैरामीटर सेटिंग्स के लिए सहज और अनुकूलित करने में आसान है। कुल मिलाकर, यह रणनीति एक उच्च कुशल, व्यावहारिक प्रवृत्ति व्यापार प्रणाली का गठन करती है, जो आगे की खोज के लायक है।
/*backtest
start: 2023-11-19 00:00:00
end: 2023-12-19 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("Flow Trend Indicator Strategy", "FlowTI", overlay=true, calc_on_every_tick=true)
isTimeFrame(timeFrame) =>
timeFrame == timeframe.period ? true : false
Htf() =>
isTimeFrame("12") ? "60" : isTimeFrame("60") ? "300" : isTimeFrame("300") ? "D" : isTimeFrame("D") ? "W" : isTimeFrame("W") ? "M" : isTimeFrame("M") ? "5M" : "D"
TrendIndication() =>
trendFastLength = 20
trendSlowLength = 50
upFastHtf = request.security(syminfo.tickerid, Htf(), rma(max(change(close), 0), trendFastLength), barmerge.gaps_off, barmerge.lookahead_on)
downFastHtf = request.security(syminfo.tickerid, Htf(), rma(-min(change(close), 0), trendFastLength), barmerge.gaps_off, barmerge.lookahead_on)
rsiFastHtf = downFastHtf == 0 ? 100 : upFastHtf == 0 ? 0 : 100 - (100 / (1 + upFastHtf / downFastHtf))
upSlowHtf = request.security(syminfo.tickerid, Htf(), rma(max(change(close), 0), trendSlowLength), barmerge.gaps_off, barmerge.lookahead_on)
downSlowHtf = request.security(syminfo.tickerid, Htf(), rma(-min(change(close), 0), trendSlowLength), barmerge.gaps_off, barmerge.lookahead_on)
rsiSlowHtf = downSlowHtf == 0 ? 100 : upSlowHtf == 0 ? 0 : 100 - (100 / (1 + upSlowHtf / downSlowHtf))
rsiDiff = rsiFastHtf - rsiSlowHtf
crossover(rsiDiff, 0) ? true : crossunder(rsiDiff, 0) ? false : na
if (TrendIndication() == true)
strategy.entry("Long", strategy.long)
if (TrendIndication() == false)
strategy.entry("Short", strategy.short)