এই কৌশলটি ল্যাজিবিয়ারের মূল ওয়েভট্রেন্ড কৌশলটির উপর ভিত্তি করে তৈরি করা হয়েছে, যার সাথে সেকেন্ডারি স্টপ লস, একাধিক ট্যাক লাভের স্তর এবং উচ্চ টাইমফ্রেম ইএমএ ফিল্টারের মতো অতিরিক্ত বৈশিষ্ট্য রয়েছে। এটি ট্রেডিংয়ের পরে স্বয়ংক্রিয় প্রবণতা পরিচালনার জন্য ইএমএ ফিল্টার এবং স্টপ লস / ট্যাক লাভ পরিচালনার সাথে একত্রিত হয়ে ট্রেডিং সংকেত তৈরি করতে ওয়েভট্রেন্ড সূচক ব্যবহার করে।
এই কৌশলটির মূল সূচক হল ওয়েভ ট্রেন্ড, যা তিনটি উপাদান নিয়ে গঠিতঃ
এপি: গড় মূল্য = (সর্বোচ্চ + সর্বনিম্ন + বন্ধ) / 3
এসইএসঃ পিএ-র n-period EMA
CI: (AP - ESA) / (0.015 * n-period EMA of absolute value of (AP - ESA))
TCI: CI এর n2-period EMA, যা WaveTrend Line 1 (WT1) নামেও পরিচিত
WT2: WT1 এর 4-পরিয়ড এসএমএ
WT1 যখন WT2 এর উপরে (গোল্ডেন ক্রস) অতিক্রম করে তখন একটি লং পজিশন খোলা হয় এবং WT1 যখন WT2 এর নীচে (মৃত্যু ক্রস) অতিক্রম করে তখন এটি বন্ধ হয়ে যায়।
অতিরিক্তভাবে, মিথ্যা সংকেত এড়াতে একটি উচ্চ সময়সীমা EMA ফিল্টার বাস্তবায়িত হয়, যাতে দাম EMA এর উপরে এবং EMA এর নীচে সংক্ষিপ্ত ব্যবসায়ের সময় কেবল দীর্ঘ ব্যবসায় নেওয়া হয়।
ম্যানুয়াল বিচার ছাড়াই ওয়েভট্রেন্ড ব্যবহার করে স্বয়ংক্রিয়ভাবে ট্রেন্ড অনুসরণ করুন
সেকেন্ডারি স্টপ লস কার্যকরভাবে একক ট্রেড ক্ষতি সীমাবদ্ধ করে
একাধিক মুনাফা গ্রহণের স্তরগুলি মুনাফা ক্যাপচারকে সর্বাধিক করে তোলে
EMA ফিল্টার মিথ্যা সংকেত এড়ানোর মাধ্যমে জয় হার উন্নত করে
প্রবণতা বিপরীত সনাক্ত করতে ব্যর্থ, ক্ষতি হতে পারে
প্যারামিটারের দুর্বল সমন্বয় অতিরিক্ত ট্রেডিংয়ের দিকে পরিচালিত করে
বিভিন্ন পরামিতি সেট অপ্টিমাইজেশান জন্য পরীক্ষা করা যেতে পারে
বিপরীত সনাক্তকরণের জন্য অতিরিক্ত সূচক বিবেচনা করুন
এই কৌশলটি বিস্তৃতভাবে ট্রেন্ড অনুসরণ, ঝুঁকি নিয়ন্ত্রণ এবং লাভের সর্বাধিকীকরণকে অন্তর্ভুক্ত করে ওয়েভট্রেন্ডের স্বয়ংক্রিয় ট্রেন্ড সনাক্তকরণ, দক্ষতা উন্নত করতে ইএমএ ফিল্টার এবং ট্রেন্ড ট্রেডিং এবং ঝুঁকি নিয়ন্ত্রণের ভারসাম্য বজায় রাখতে স্টপ লস / লাভ পরিচালনা। এটি একটি দক্ষ এবং স্থিতিশীল ট্রেন্ড অনুসরণকারী সিস্টেম। আরও পরামিতি অপ্টিমাইজেশন এবং বিপরীত প্রক্রিয়া কৌশলটির প্রয়োগযোগ্যতা বাড়িয়ে তুলতে পারে।
/*backtest start: 2023-10-31 00:00:00 end: 2023-11-30 00:00:00 period: 1h basePeriod: 15m 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/ // © undacovacobra //@version=4 strategy("WaveTrend Strategy [LazyBear] with Secondary Stop Loss", overlay=true) // Input parameters n1 = input(10, "Channel Length") n2 = input(21, "Average Length") obLevel1 = input(60, "Over Bought Level 1") obLevel2 = input(53, "Over Bought Level 2") osLevel1 = input(-60, "Over Sold Level 1") osLevel2 = input(-53, "Over Sold Level 2") useEmaFilter = input(false, "Use EMA Filter") emaLength = input(50, "EMA Length") emaTimeFrame = input("60", "EMA Time Frame") tradeMode = input("Both", "Trade Mode", options=["Long Only", "Short Only", "Both"]) useSecondarySL = input(false, "Use Secondary Stop Loss") slPercentage = input(5.0, "Stop Loss Percentage (%)") // WaveTrend Indicator Calculations ap = hlc3 esa = ema(ap, n1) d = ema(abs(ap - esa), n1) ci = (ap - esa) / (0.015 * d) tci = ema(ci, n2) wt1 = tci wt2 = sma(wt1, 4) // EMA Calculation with Selected Time Frame getEma(timeFrame) => security(syminfo.tickerid, timeFrame, ema(close, emaLength)) emaFilter = getEma(emaTimeFrame) // Secondary Stop Loss Calculation longStopPrice = strategy.position_avg_price * (1 - slPercentage / 100) shortStopPrice = strategy.position_avg_price * (1 + slPercentage / 100) // Long Entry and Exit Conditions with EMA Filter and Trade Mode longEntry = crossover(wt1, wt2) and wt2 < osLevel1 and (not useEmaFilter or close > emaFilter) and (tradeMode == "Long Only" or tradeMode == "Both") if (longEntry) strategy.entry("Long", strategy.long) longExit = crossunder(wt1, wt2) and wt2 > obLevel1 if (longExit) strategy.close("Long") if (useSecondarySL and strategy.position_size > 0 and low < longStopPrice) strategy.close("Long", comment="SL Hit") // Short Entry and Exit Conditions with EMA Filter and Trade Mode shortEntry = crossunder(wt1, wt2) and wt2 > obLevel1 and (not useEmaFilter or close < emaFilter) and (tradeMode == "Short Only" or tradeMode == "Both") if (shortEntry) strategy.entry("Short", strategy.short) shortExit = crossover(wt1, wt2) and wt2 < osLevel1 if (shortExit) strategy.close("Short") if (useSecondarySL and strategy.position_size < 0 and high > shortStopPrice) strategy.close("Short", comment="SL Hit") // Plotting plot(0, color=color.gray) plot(obLevel1, color=color.red) plot(osLevel1, color=color.green) plot(obLevel2, color=color.red, style=plot.style_cross) plot(osLevel2, color=color.green, style=plot.style_cross) plot(wt1, color=color.green) plot(wt2, color=color.red, style=plot.style_cross) plot(wt1-wt2, color=color.blue, style=plot.style_area, transp=80) plot(emaFilter, color=color.blue)