
ট্রিপলিন ক্রসড মোশন কৌশল বাজার প্রবণতা ট্র্যাক করার জন্য একটি আদর্শ প্রযুক্তিগত সূচক কৌশল। এটি 16 টি, 36 টি এবং 72 টি চক্রের তিনটি সরল চলমান গড়কে একত্রিত করে, তাদের মাল্টিহেড ক্রস এবং খালি হেড ক্রস দ্বারা বাজারের প্রবণতা বিচার করে এবং কাফমানের স্ব-অনুকূলিত চলমান গড়কে ফিল্টার হিসাবে ব্যবহার করে, যখন প্রবণতার দিকটি আরও স্পষ্ট হয়, তখন অতিরিক্ত বা খালি অপারেশন করা হয়।
এই কৌশলটির কেন্দ্রীয় সূচক হল তিনটি সরল চলমান গড়, 16 পিরিয়ড, 36 পিরিয়ড এবং 72 পিরিয়ড। যখন একটি দীর্ঘমেয়াদী গড় লাইন একটি সংক্ষিপ্ত সময়ের গড় লাইন অতিক্রম করে, তখন বাজারটি একটি মাল্টিহেড ট্রেন্ডে প্রবেশ করে; যখন একটি দীর্ঘমেয়াদী গড় লাইন একটি সংক্ষিপ্ত সময়ের গড় লাইন অতিক্রম করে, তখন বাজারটি একটি ফাঁকা ট্রেন্ডে প্রবেশ করে। উদাহরণস্বরূপ, 16 টি গড় লাইন 36 গড় লাইন এবং 72 গড় লাইন অতিক্রম করে, এটি একটি ফাঁকা সংকেত; 16 টি গড় লাইন 36 গড় লাইন এবং 72 গড় লাইন অতিক্রম করে, এটি একটি ফাঁকা সংকেত।
কফম্যানের স্বনির্ধারিত চলমান গড় (KAMA) একটি ফিল্টার হিসাবে ব্যবহৃত হয় যাতে প্রবণতা অস্পষ্ট হলে ভুল সংকেত এড়ানো যায়। কেবলমাত্র KAMA অ-গতিশীল বা অ-অব্যাহত মোডে (অর্থাৎ, একটি রৈখিক অনুচ্ছেদ) থাকলে, সমান্তরাল ক্রস সংকেত সক্রিয় করা হবে।
কৌশলটি গড়রেখার ক্রসগুলি অনুসরণ করে, যখন প্রবণতা আরও পরিষ্কার হয়, তখন অতিরিক্ত বা খালি করার অপারেশন করা হয়। অতিরিক্ত শর্তটি 16 গড়রেখায় 36 গড়রেখা এবং 72 গড়রেখা অতিক্রম করে, এবং KAMA লিনিয়ার ((অ-দ্রুতগতি); খালি শর্তটি 16 গড়রেখার নীচে 36 গড়রেখা এবং 72 গড়রেখা অতিক্রম করে, এবং KAMA লিনিয়ার ((অ-দ্রুতগতি) ।
এই কৌশলটির সুবিধাগুলো হলঃ
এই কৌশলটির কিছু ঝুঁকিও রয়েছেঃ
গড়রেখার প্যারামিটারগুলি যথাযথভাবে সামঞ্জস্য করে, স্টপ লস কন্ট্রাক্ট সেট করে, বা কেবলমাত্র উচ্চতর অস্থিরতার বাজারে এই কৌশলটি ব্যবহার করে ঝুঁকি হ্রাস করা যেতে পারে।
এই কৌশলটি নিম্নলিখিত উপায়ে অপ্টিমাইজ করা যেতে পারেঃ
ত্রি-রেখা ক্রস গতিশীলতা কৌশল সামগ্রিকভাবে একটি আরো ক্লাসিক এবং ব্যবহারিক ট্র্যাকিং প্রবণতা-টাইপ কৌশল। এটি একাধিক সময়কালের গড় রেখার ক্রস দ্বারা বাজারের মধ্য-দৈর্ঘ্য গতিশীলতা বিচার করে এবং কার্যকরভাবে কিছু শব্দ ফিল্টার করে। এটি সময়-বাণিজ্যের রেফারেন্স সূচকগুলির মধ্যে একটি হিসাবে ব্যবহার করা যেতে পারে। তবে এই কৌশলটির কিছু দুর্বলতা রয়েছে যা আরও বিস্তৃত বাজারে নিরপেক্ষ হওয়ার জন্য আরও সম্প্রসারণ এবং অপ্টিমাইজেশনের প্রয়োজন।
/*backtest
start: 2023-11-24 00:00:00
end: 2023-12-24 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/
// © Wielkieef
//@version=5
strategy(title='Three SMA-crossover strategy [30min] ', overlay=true, pyramiding=1, initial_capital=10000, default_qty_type=strategy.cash, default_qty_value=10000, calc_on_order_fills=false, slippage=0, commission_type=strategy.commission.percent, commission_value=0.03)
src = close
Length1 = input.int(16, title=' 1-SMA Lenght', minval=1, group='SMA')
Length2 = input.int(36, title=' 2-SMA Lenght', minval=1, group='SMA')
Length3 = input.int(72, title=' 3-SMA Lenght', minval=1, group='SMA')
SMA1 = ta.sma(close, Length1)
SMA2 = ta.sma(close, Length2)
SMA3 = ta.sma(close, Length3)
Long_ma = SMA1 > SMA2 and SMA2 > SMA3
Short_ma = SMA1 < SMA2 and SMA2 < SMA3
LengthMainSMA = input.int(100, title=' Trend SMA ', minval=1)
SMAas = ta.sma(src, LengthMainSMA)
// Powered Kaufman Adaptive Moving Average by alexgrover (modificated by Wielkieef)
lengthas = input.int(50, title=' KAMA Lenght')
sp = input.bool(true, title=' Self Powered')
er = math.abs(ta.change(close, lengthas)) / math.sum(math.abs(ta.change(close)), lengthas)
pow = sp ? 1 / er : 2
per = math.pow(math.abs(ta.change(close, lengthas)) / math.sum(math.abs(ta.change(close)), lengthas), pow)
a = 0.
a := per * src + (1 - per) * nz(a[1], src)
mad4h = 0.
a_f = a / a[1] > .999 and a / a[1] < 1.001
///.
Bar_color = close > SMAas ? color.green : Long_ma ? color.blue : Short_ma ? color.maroon : color.gray
barcolor(color=Bar_color)
long_cond = Long_ma and SMAas < close and not a_f and close > a
short_cond = Short_ma and SMAas > close and not a_f and close < a
long_stop = Short_ma and SMAas < close
short_stop = Long_ma and SMAas > close
SMA1plot = plot(SMA1, color=Bar_color, linewidth=2)
SMA2plot = plot(SMA2, color=Bar_color, linewidth=4)
SMA3plot = plot(SMA3, color=Bar_color, linewidth=2)
fill(SMA1plot,SMA3plot,title="RANGE " ,color = color.new(Bar_color, 50))
if long_cond
strategy.entry('Long', strategy.long)
if short_cond
strategy.entry('Short', strategy.short)
strategy.close_all(when=long_stop or short_stop)
//by wielkieef