
এই কৌশলটি বিভিন্ন ধরণের মুভিং এভারেজকে গতিশীলভাবে নির্বাচন করে এবং একাধিক সময়কালের সাথে একত্রিত করে ট্রেডিং সিগন্যাল তৈরি করে।
এই কৌশলটি এসএমএ, ইএমএ, টিএমএ, ডাব্লুএমএ এবং এইচএমএ পাঁচটি চলমান গড়ের সূচক নির্বাচন করতে এবং গড়ের সময়কালের দৈর্ঘ্য সেট করতে দেয়। কৌশলটি চয়ন করা গতিশীলতার উপর ভিত্তি করে বিভিন্ন ধরণের গড় আঁকবে। যখন বন্ধের দাম বেড়ে যায় তখন গড়ের বাইরে চলে যায়, যখন বন্ধের দাম কমে যায় তখন গড়ের বাইরে চলে যায়।
বিশেষভাবে, কৌশলটি প্রথমে ইনপুট প্যারামিটারগুলির উপর ভিত্তি করে রিটার্নিং সময়কাল নির্ধারণ করে। তারপর পাঁচটি গড় লাইন সূচক গণনা করা হয়ঃ
পছন্দ অনুসারে, একটি মিডল লাইন আঁকুন। যখন ক্লোজ-আপ মূল্য গড়ের চেয়ে বেশি হয়, তখন অতিরিক্ত করুন; যখন ক্লোজ-আপ মূল্য গড়ের চেয়ে কম হয়, তখন খালি করুন।
এই কৌশলটি বিভিন্ন ধরণের গড়ের সমন্বয় ব্যবহার করে, দামের ডেটা মসৃণ করে, বাজার শব্দটি ফিল্টার করে এবং আরও নির্ভরযোগ্য ট্রেডিং সিগন্যাল তৈরি করে। গড়ের সময়কালের দৈর্ঘ্যটি কাস্টমাইজ করার অনুমতি দেয়, যা বিভিন্ন সময়কালের প্রবণতাগুলির জন্য ট্রেড করতে পারে।
নিম্নলিখিত বিষয়গুলিকে অনুকূল করে ঝুঁকি কমাতে পারেঃ
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে অপ্টিমাইজ করা যেতে পারেঃ
উদাহরণস্বরূপ, একটি ভলিউম ইনডিকেটর যুক্ত করা যেতে পারে, যা কেবলমাত্র লেনদেনের পরিমাণ বাড়ার ক্ষেত্রে লেনদেনের সংকেত তৈরি করে, কিছু মিথ্যা ব্রেকআউটগুলি ফিল্টার করে।
একটি চ্যানেল সেট করা যেতে পারে, কেবলমাত্র যখন দামটি চ্যানেলটি ভেঙে যায় তখনই প্রবেশ করা যায়; একটি স্টপ লস লাইন সেট করুন, দামটি স্টপ লস লাইন স্পর্শ করার পরে সমতল করুন। এটি অপ্রয়োজনীয় ক্ষতি হ্রাস করতে পারে।
বাজারের অবস্থার গতিশীলতার উপর ভিত্তি করে গড় লাইন চক্রটি সামঞ্জস্য করা যেতে পারে, প্রবণতা আরও স্পষ্ট হলে দীর্ঘকালীন গড় লাইন ব্যবহার করা যেতে পারে এবং সংক্ষিপ্ত সময়ের গড় লাইন ব্যবহার করা যেতে পারে।
পজিশনের আকারটি প্রত্যাহারের পরিস্থিতি অনুসারে সামঞ্জস্য করা যেতে পারে, প্রত্যাহারের সময় পজিশনটি হ্রাস করুন এবং মুনাফার সময় পজিশনটি মাঝারি পরিমাণে বাড়ান।
এই কৌশলটি একাধিক সমান্তরাল সূচকগুলির সমন্বয় প্রয়োগ করে, একাধিক সময়কালের সাথে মিলিত হয়, যা তুলনামূলকভাবে স্থিতিশীল প্রবণতা ট্র্যাকিং প্রভাব তৈরি করে। কৌশলটি অপ্টিমাইজ করার জন্য আরও জায়গা রয়েছে, যা প্রবেশের ফিল্টারিং, প্রস্থান পদ্ধতি, প্যারামিটার অপ্টিমাইজেশন ইত্যাদির দিক থেকে উন্নতি করতে পারে, যাতে কৌশলটি রিয়েল ডিস্কে আরও ভাল প্রভাব ফেলতে পারে।
/*backtest
start: 2022-10-20 00:00:00
end: 2023-10-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("MA_strategy ", shorttitle="MA_strategy", overlay=true, initial_capital=100000)
qty = input(100000000, "Buy quantity")
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testStartHour = input(0, "Backtest Start Hour")
testStartMin = input(0, "Backtest Start Minute")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,testStartHour,testStartMin)
testStopYear = input(2099, "Backtest Stop Year")
testStopMonth = input(1, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)
testPeriod() =>
time >= testPeriodStart and time <= testPeriodStop ? true : false
ma1 = input( "SMA",title="Select MA", options=["SMA", "EMA","TEMA", "WMA","HMA"])
len1 = input(7, minval=1, title="Period")
s=sma(close,len1)
e=ema(close,len1)
xEMA1 = ema(close, len1)
xEMA2 = ema(xEMA1, len1)
xEMA3 = ema(xEMA2, len1)
t = 3 * xEMA1 - 3 * xEMA2 + xEMA3
f_hma(_src, _length)=>
_return = wma((2 * wma(_src, _length / 2)) - wma(_src, _length), round(sqrt(_length)))
h = f_hma(close, len1)
w = wma(close, len1)
ma = ma1 == "SMA"?s:ma1=="EMA"?e:ma1=="WMA"?w:ma1=="HMA"?h:ma1=="TEMA"?t:na
buy= close>ma
sell= close<ma
alertcondition(buy, title='buy', message='buy')
alertcondition(sell, title='sell', message='sell')
ordersize=floor(strategy.equity/close)
if testPeriod()
strategy.entry("long",strategy.long,ordersize,when=buy)
strategy.close("long", when = sell )