
এই কৌশলটির নাম হল ডায়নামিক ইনডিকেটর এবং সুপারট্রেন্ডের সমন্বয় ট্রেডিং কৌশল। এই কৌশলটির মূল ধারণাটি হ’ল ডায়নামিক ইনডিকেটর এবং সুপারট্রেন্ড সূচকগুলির সমন্বয় করা, আরও সঠিক প্রবেশ এবং প্রস্থান অর্জনের জন্য দুটি সূচকের সুবিধা গ্রহণ করা।
বিশেষত, গতিশীলতা সূচকগুলি মূল্যের গতির ত্বরণ বা হ্রাসের বিচার করতে ব্যবহৃত হয়, প্রবণতার পরিবর্তনগুলি বিচার করে। সুপারট্রেন্ডগুলি মূল্যায়ন করার জন্য ব্যবহৃত হয় যে দামগুলি উত্থান বা পতনের চ্যানেলটি ভেঙেছে কিনা, প্রবণতার পরিবর্তনগুলি বিচার করে। এই দুটি সংমিশ্রণটি প্রবণতার পালাটি আরও সঠিকভাবে ধরতে পারে।
দামের N দিনের গতিশীলতা গণনা করুন এবং গতিশীলতার 1 দিনের গতিশীলতা গণনা করুন। যখন N দিনের গতিশীলতা > 0 এবং 1 দিনের গতিশীলতা > 0 হয়, তখন অতিরিক্ত সংকেত হিসাবে; যখন N দিনের গতিশীলতা < 0 এবং 1 দিনের গতিশীলতা < 0 হয়, তখন ফাঁকা সংকেত হিসাবে।
দামের ATR এর মান গণনা করুন এবং এটিআর এর উপর ভিত্তি করে একটি উত্থান চ্যানেল লাইন এবং একটি পতন চ্যানেল লাইন আঁকুন। দাম যখন নীচে থেকে উত্থান চ্যানেলটি ভেঙে দেয় তখন একটি বহু সংকেত করুন এবং যখন দাম উপরে থেকে পতন চ্যানেলটি ভেঙে দেয় তখন একটি ফাঁকা সংকেত দিন।
গতিশীলতার সূচকটির বহু সংকেত এবং সুপারট্রেন্ডের বহু সংকেতকে কিক এবং কিক অপারেশন করে, যখন এটি ঘটে তখন চূড়ান্ত বহু প্রবেশের সংকেত; গতিশীলতার সূচকের শূন্য সংকেত এবং সুপারট্রেন্ডের শূন্য সংকেতকে কিক এবং কিক অপারেশন করে, যখন এটি ঘটে তখন চূড়ান্ত শূন্য প্রবেশের সংকেত।
গতিশীলতা সূচক ব্যবহার করে দামের গতি বাড়ানো বা হ্রাস করা এবং প্রবণতা পাল্টানোর পয়েন্টগুলি ধরা।
সুপারট্রেন্ড সূচকগুলি ব্যবহার করে, মূল্যের ব্রেকিং চ্যানেলগুলি নির্ণয় করুন এবং ব্রেকিং পয়েন্টগুলি ধরুন।
উভয় সূচক একে অপরকে যাচাই করে, যা ভুল সংকেত হ্রাস করে এবং এন্ট্রিগুলির নির্ভুলতা বাড়ায়।
Exit logic, দুইটি সূচকের সমন্বয়ে, প্রবণতা ট্র্যাকিং এবং প্রাক-প্রবৃত্তির প্রস্থান এড়াতে পারে।
N-দিন গতিশীলতা সূচক প্যারামিটার ভুল সেট করা ট্রেন্ডের পালা পয়েন্টটি মিস করতে পারে।
সুপারট্রেন্ডের প্যারামিটারগুলি ভুলভাবে সেট করা হয়েছে, চ্যানেলটি ভুলভাবে আঁকা হয়েছে, যা মিথ্যা সংকেত তৈরি করতে পারে।
এই দুটি সূচক একে অপরকে যাচাই করে এবং কিছু সুযোগ মিস করা হতে পারে।
প্যারামিটার প্যাকেজটি সামঞ্জস্য করতে হবে যাতে সর্বোত্তম প্যারামিটার জোড়া খুঁজে পাওয়া যায় এবং কৌশলগত সম্ভাব্যতা সর্বাধিক করা যায়।
এই সমস্যা সমাধানের উপায়ঃ
walk-forward analysis পদ্ধতি ব্যবহার করে সর্বোত্তম প্যারামিটার খুঁজে বের করুন।
প্যারামিটার অপ্টিমাইজেশান মডিউল যোগ করুন, রিয়েল-টাইম অপ্টিমাইজেশান প্যারামিটার
সমন্বিত চিন্তাধারার মাধ্যমে দুটি সূচককে সমন্বিত করার যৌক্তিকতা।
প্যারামিটারগুলিকে রিয়েল-টাইমে বাজারের অবস্থার সাথে সামঞ্জস্য করতে সক্ষম করার জন্য প্যারামিটারগুলিকে স্বয়ংক্রিয়ভাবে অপ্টিমাইজেশন মডিউল যুক্ত করা হয়েছে
মেশিন লার্নিং মডেল যোগ করা, যা নির্দেশক সংকেতের সঠিকতা নির্ধারণে সহায়তা করে
আরও সূচক প্রসারিত করুন, সূচক সেট তৈরি করুন, ভোটদানের প্রক্রিয়া ব্যবহার করে এন্ট্রি সংকেত তৈরি করুন
ডেটা-চালিত পদ্ধতিতে প্রবেশ এবং প্রস্থান সময় নির্ধারণের জন্য প্রচলিত সূচকগুলির পরিবর্তে গভীর শিক্ষার মডেলগুলি ব্যবহার করুন
এই কৌশলটি ডাবল যাচাইকরণের মাধ্যমে এন্ট্রি সঠিকতা বাড়াতে এবং সূচকগুলি ব্যবহার করে প্রস্থান সময় নির্ধারণের জন্য গতিশীলতা সূচক এবং সুপারট্রেন্ড সূচকের সুবিধাগুলি ব্যবহার করে। এটি মিথ্যা সংকেত হ্রাস করতে পারে এবং একক ব্যবহারের তুলনায় উচ্চতর সাফল্যের হার অর্জন করতে পারে। প্যারামিটার অপ্টিমাইজেশন, মেশিন লার্নিং এবং অন্যান্য প্রযুক্তির প্রসারণের মাধ্যমে কৌশলটির কার্যকারিতা আরও বাড়ানোর জায়গা রয়েছে, যা গভীর গবেষণা এবং প্রয়োগের জন্য উপযুক্ত।
/*backtest
start: 2022-12-20 00:00:00
end: 2023-12-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Momentum + SuperTrend Strategy", overlay=true)
// Momentum Strategy
length = input(12)
price = close
momentum(seria, length) =>
mom = seria - seria[length]
mom
mom0 = momentum(price, length)
mom1 = momentum(mom0, 1)
momLongCondition = mom0 > 0 and mom1 > 0
momShortCondition = mom0 < 0 and mom1 < 0
// SuperTrend Strategy
Periods = input(10)
Multiplier = input(3.0)
changeATR = input(true)
src = input(hl2)
atr2 = sma(tr, Periods)
atr = changeATR ? atr(Periods) : atr2
up = src - (Multiplier * atr)
up1 = nz(up[1], up)
up := close[1] > up1 ? max(up, up1) : up
dn = src + (Multiplier * atr)
dn1 = nz(dn[1], dn)
dn := close[1] < dn1 ? min(dn, dn1) : dn
trend = 1
trend := nz(trend[1], trend)
trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend
buySignal = trend == 1 and trend[1] == -1
sellSignal = trend == -1 and trend[1] == 1
// Combined Entry Conditions
longCondition = momLongCondition and buySignal
shortCondition = momShortCondition and sellSignal
// Strategy Entries
if (longCondition)
strategy.entry("MomLE", strategy.long, stop=high+syminfo.mintick, comment="MomLE")
else
strategy.cancel("MomLE")
if (shortCondition)
strategy.entry("MomSE", strategy.short, stop=low-syminfo.mintick, comment="MomSE")
else
strategy.cancel("MomSE")
// Plot SuperTrend on the chart
upPlot = plot(trend == 1 ? up : na, title="SuperTrend Up", color=color.green, linewidth=2)
dnPlot = plot(trend == -1 ? dn : na, title="SuperTrend Down", color=color.red, linewidth=2)
// Highlight the SuperTrend region
fill(upPlot, dnPlot, color = trend == 1 ? color.new(color.green, 90) : color.new(color.red, 90), title="SuperTrend Highlight")
// Plot SuperTrend Buy/Sell signals on the chart
plotshape(series=buySignal, title="SuperTrend Buy Signal", color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=sellSignal, title="SuperTrend Sell Signal", color=color.red, style=shape.triangledown, size=size.small)
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © naveen1119