इस रणनीति का मुख्य विचार लाजी बियर
ट्रेंड की दिशा निर्धारित करने के लिए लाज़ी बियर
मुद्रा प्रवाह निर्धारित करने के लिए क्रिप्टो फेस द्वारा बेहतर एमएफआई संकेतक का उपयोग करें, जो पिछले 58 दिनों में मूल्य परिवर्तन और मात्रा के योग की गणना करता है। 0 से अधिक एमएफआई धन प्रवाह को इंगित करता है, 0 से कम आउटफ्लो को इंगित करता है।
जब ब्लूवेव 0 से ऊपर जाता है और एमएफआई 0 से अधिक होता है, तो लंबी स्थिति खोलने के लिए एक खरीद संकेत उत्पन्न होता है; जब ब्लूवेव 0 से नीचे जाता है और एमएफआई 0 से कम होता है, तो छोटी स्थिति खोलने के लिए एक बिक्री संकेत उत्पन्न होता है।
जोखिम को नियंत्रित करते हुए लाभ के लिए बाजार की प्रवृत्ति का पालन करने के लिए स्टॉप लॉस और लाभ लेने की शर्तें निर्धारित करें।
दो संकेतकों को मिलाकर बाजार की प्रवृत्ति की दिशा को अधिक सटीक रूप से निर्धारित किया जा सकता है।
ब्लूवेव
एमएफआई नकदी प्रवाह निर्धारित कर सकता है, जिससे झूठे ब्रेकआउट से होने वाले नुकसान से बचा जा सकता है।
इस रणनीति में कुछ पैरामीटर हैं और इसे लागू करना और संचालित करना आसान है।
लचीली स्टॉप लॉस और टेक प्रॉफिट सेटिंग्स ट्रेडिंग जोखिमों को नियंत्रित करने में मदद करती हैं।
विशिष्ट बाजार घंटों के दौरान असामान्य अस्थिरता से बचने के लिए ट्रेडिंग सत्र सेट किए जा सकते हैं।
निरंतर गिरावट के चलते लगातार शॉर्ट पोजीशन और नुकसान हो सकते हैं।
गलत संकेतों से स्थिति में प्रवेश करने के बाद फंस जाना पड़ सकता है।
ओवरसाइज्ड स्टॉप लॉस नुकसान को बढ़ा सकता है।
उच्च अस्थिरता अक्सर स्टॉप लॉस पॉइंट्स पर पहुंच सकती है।
अनुचित पैरामीटर अनुकूलन खराब रणनीति प्रदर्शन का कारण बन सकता है।
बहुत बार ट्रेडिंग सिग्नल लेनदेन की लागत और फिसलने में वृद्धि कर सकते हैं।
अधिक स्थिर और विश्वसनीय संकेतों के लिए ब्लूवेव और एमएफआई के मापदंडों का अनुकूलन करना।
निरंतर लघु घाटे से बचने के लिए रुझान संकेतकों को शामिल करें।
गतिशील रूप से स्टॉप लॉस/टेक प्रॉफिट अनुपात को समायोजित करें ताकि फंसे होने की संभावना कम हो सके।
झूठे संकेतों को कम करने के लिए प्रवेश स्थितियों को परिष्कृत करें।
रैलियों का पीछा करने और डंपिंग डिप्स से बचने के लिए स्थिति आकार पर विचार करें।
अधिक सटीक प्रवेश और निकास बिंदुओं के लिए मशीन लर्निंग मॉडल के साथ संयोजन करें।
यह रणनीति नीली लहर और एमएफआई संकेतकों को संयोजित करती है ताकि प्रवृत्ति की दिशा निर्धारित की जा सके, ऊपर की प्रवृत्ति पर लंबी और नीचे की प्रवृत्ति पर छोटी, लाभ के लिए प्रभावी रूप से बाजार के रुझानों का पालन किया जा सके। हालांकि, पैरामीटर सेटिंग्स, स्टॉप लॉस / टेक प्रॉफिट, सतत डाउनट्रेंड आदि में जोखिम मौजूद हैं, जो रणनीति प्रदर्शन और मजबूती में सुधार के लिए पैरामीटर ट्यूनिंग, स्टॉप लॉस तंत्र, फिल्टर स्थितियों आदि पर और अनुकूलन की आवश्यकता होती है। कुल मिलाकर, रणनीति सहज है और लंबी अवधि के ट्रेंड के बाद अच्छी तरह से काम करती है, लेकिन रेंजिंग बाजारों में फंसे होने पर नुकसान हो सकता है।
/*backtest start: 2022-11-07 00:00:00 end: 2023-11-13 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // @version=4 // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © Bunghole 2021 strategy(title="Crypto Squeeze Strategy", initial_capital = 100000, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, currency = 'USD', overlay=true) //// Stoploss and Take Profit Parameters // Enable Long Strategy enable_long_strategy = input(true, title="Enable Long Strategy", group="SL/TP For Long Strategy",inline="1") long_stoploss_value = input(defval=50, title='Stoploss %', type=input.float, minval=0.1, group="SL/TP For Long Strategy",inline="2") long_stoploss_percentage = (close * (long_stoploss_value / 100)) / syminfo.mintick long_takeprofit_value = input(defval=50, title='Take Profit %', type=input.float, minval=0.1, group="SL/TP For Long Strategy",inline="2") long_takeprofit_percentage = (close * (long_takeprofit_value / 100)) / syminfo.mintick // Enable Short Strategy enable_short_strategy = input(true, title="Enable Short Strategy", group="SL/TP For Short Strategy",inline="3") short_stoploss_value = input(defval=50, title='Stoploss %', type=input.float, minval=0.1, group= "SL/TP For Short Strategy",inline="4") short_stoploss_percentage = (close * (short_stoploss_value / 100)) / syminfo.mintick short_takeprofit_value = input(defval=50, title='Take Profit %', type=input.float, minval=0.1, group="SL/TP For Short Strategy",inline="4") short_takeprofit_percentage = (close * (short_takeprofit_value / 100)) / syminfo.mintick // Plot Stoploss & Take Profit Levels long_stoploss_price = strategy.position_avg_price * (1 - long_stoploss_value/100) long_takeprofit_price = strategy.position_avg_price * (1 + long_takeprofit_value/100) short_stoploss_price = strategy.position_avg_price * (1 + short_stoploss_value/100) short_takeprofit_price = strategy.position_avg_price * (1 - short_takeprofit_value/100) plot(enable_long_strategy and not enable_short_strategy ? long_stoploss_price: na, color=#ff0000, style=plot.style_linebr, linewidth=2, title="Long SL Level") plot(enable_long_strategy and not enable_short_strategy ? long_takeprofit_price: na, color=#008000, style=plot.style_linebr, linewidth=2, title="Long TP Level") plot(enable_short_strategy and not enable_long_strategy ? short_stoploss_price: na, color=#ff0000, style=plot.style_linebr, linewidth=2, title="Short SL Level") plot(enable_short_strategy and not enable_long_strategy ? short_takeprofit_price: na, color=#008000, style=plot.style_linebr, linewidth=2, title="Short TP Level") // Date Range start_date = input(title="Start Date", type=input.integer, defval=1, minval=1, maxval=31, group="Date Range") start_month = input(title="Start Month", type=input.integer, defval=1, minval=1, maxval=12, group="Date Range") start_year = input(title="Start Year", type=input.integer, defval=1804, minval=1800, maxval=3000, group="Date Range") end_date = input(title="End Date", type=input.integer, defval=1, minval=1, maxval=3, group="Date Range") end_month = input(title="End Month", type=input.integer, defval=1, minval=1, maxval=12, group="Date Range") end_year = input(title="End Year", type=input.integer, defval=2077, minval=1800, maxval=3000, group="Date Range") in_date_range = (time >= timestamp(syminfo.timezone, start_year, start_month, start_date, 0, 0)) and (time < timestamp(syminfo.timezone, end_year, end_month, end_date, 0, 0)) //// Indicator Inputs // Lazy Bear's Momentum Indicator BlueWave = linreg(close - avg(avg(highest(high, 20), lowest(low, 20)), sma(close, 20)), 20, 0) // Replicated version of Crypto Face's MFI Indicator mfiUpper = sum(volume * (change(hlc3) <= 0 ? 0 : hlc3), 58) mfiLower = sum(volume * (change(hlc3) >= 0 ? 0 : hlc3), 58) _mfiRsi(mfiUpper, mfiLower) => if mfiLower == 0 100 if mfiUpper == 0 0 100.0 - (100.0 / (1.0 + mfiUpper / mfiLower)) mf = _mfiRsi(mfiUpper, mfiLower) mfi = (mf - 50) * 3 //// Strategy // Creating Long and Short Strategy buy_signal = crossover(BlueWave, 0) and mfi > 0 sell_signal = crossunder(BlueWave, 0) and mfi < 0 // Long Strategy if buy_signal and in_date_range and enable_long_strategy == true strategy.entry("Long", true, when=buy_signal, alert_message="Open Long Position") strategy.exit("Long SL/TP", from_entry="Long", loss=long_stoploss_percentage, profit=long_takeprofit_percentage, alert_message="Your Long SL/TP Limit As Been Triggered.") strategy.close("Long", when=sell_signal, alert_message="Close Long Position") // Short Strategy if sell_signal and in_date_range and enable_short_strategy == true strategy.entry("Short", false, when = sell_signal, alert_message="Open Short Position") strategy.exit("Short SL/TP", from_entry="Short", loss=short_stoploss_percentage, profit=short_takeprofit_percentage, alert_message="Your Short SL/TP Limit As Been Triggered.") strategy.close("Short", when=buy_signal, alert_message="Close Short Position")