দুই বছরের নতুন উচ্চ রিট্র্যাকশন মুভিং গড় কৌশল

লেখক:চাওঝাং, তারিখঃ 2024-01-26 14:49:28
ট্যাগঃ

img

সারসংক্ষেপ

এই কৌশলটি স্টকগুলির দুই বছরের নতুন সর্বোচ্চ মূল্য এবং চলমান গড়ের অনন্য গণনার উপর ভিত্তি করে। এটি একটি ক্রয় সংকেত উত্পন্ন করে যখন স্টক মূল্য দুই বছরের সর্বোচ্চ পৌঁছানোর পরে 13 দিনের এক্সপোনেন্সিয়াল চলমান গড়ের দিকে পিছিয়ে যায়।

কৌশল নীতি

এই কৌশলটির মূল যুক্তি নিম্নলিখিত অনন্য গণনার উপর ভিত্তি করেঃ

  1. যখন শেয়ারের দাম গত দুই বছরে নতুন উচ্চতায় পৌঁছে যায়, তখন এটি একটি স্বল্পমেয়াদী শিখর গঠন করে। এটি একটি সমালোচনামূলক মূল্য স্তর।

  2. যখন দাম এই নতুন উচ্চতা থেকে সরে যায় এবং ১৩ দিনের এক্সপোনেন্সিয়াল মুভিং মিডিয়ায় ফিরে আসে, তখন এটি একটি ভাল কেনার সুযোগ উপস্থাপন করে। এটি মূল্য সংহতকরণ প্যাটার্ন ব্যবহার করে।

  3. উপরন্তু, যখন ক্রয় সংকেতটি ট্রিগার হয়, তখন স্টক মূল্যটি দুই বছরের সর্বোচ্চের 10% পরিসরের মধ্যে থাকতে হবে, খুব বেশি দূরে নয়। এটি সঠিক সময় নিশ্চিত করার জন্য 13 দিনের লাইনের নীচে এবং 21 দিনের লাইনের উপরে থাকতে হবে।

  4. খোলা পজিশনের ক্ষেত্রে, যদি মূল্য ২১ দিনের এমএ লাইনের নিচে ৫% ভাঙ্গতে পারে বা দুই বছরের সর্বোচ্চ থেকে ২০% হ্রাস পায়, তাহলে মুনাফা লক করার জন্য পজিশনটি বন্ধ হয়ে যাবে।

কৌশলগত সুবিধা

এটি একটি দীর্ঘমেয়াদী ব্রেকআউট কৌশল যার নিম্নলিখিত সুবিধাসমূহ রয়েছে:

  1. অনন্য দুই বছরের উচ্চ মূল্য সম্ভাব্য প্রবণতা বিপরীত সম্ভাবনা কার্যকরভাবে চিহ্নিত করতে পারে।

  2. ১৩ দিনের ইএমএ লাইনটি হুইপস এড়াতে এবং শক্তিশালী গতি নির্ধারণের জন্য প্রবেশ ফিল্টার হিসাবে কাজ করে।

  3. অনন্য হিসাবগুলি মূল্যের ক্রিয়াকলাপের উপর ভিত্তি করে সংকেত তৈরি করে, স্বতন্ত্র হস্তক্ষেপ এড়ায়।

  4. যুক্তিসঙ্গত স্টপ লস বেশিরভাগ মুনাফা লক করার অনুমতি দেয়।

ঝুঁকি এবং সমাধান

এছাড়া কিছু ঝুঁকি রয়েছে যা মূলত নিম্নরূপঃ

  1. বাজারগুলি গভীরভাবে হ্রাস পেতে পারে, সময়মতো থামতে পারে না। সিদ্ধান্ত নেওয়ার জন্য সামগ্রিক পরিবেশের মূল্যায়ন করতে হবে যে ক্ষতির সিদ্ধান্ত নেবে কিনা।

  2. রাতারাতি বড় ফাঁকগুলি নিখুঁত স্টপ লসকে প্রতিরোধ করতে পারে। সুতরাং মানিয়ে নিতে স্টপ লস শতাংশটি প্রসারিত করা দরকার।

  3. ১৩ দিনের রেখা ভালভাবে সংহতকরণ ফিল্টার করতে পারে না, অত্যধিক মিথ্যা সংকেত তৈরি করে। ২১ দিনের রেখায় প্রসারিত করার কথা বিবেচনা করতে পারে।

  4. নতুন উচ্চ মূল্য প্রবণতা পরিবর্তন নির্ধারণের জন্য ভাল কাজ নাও করতে পারে। কার্যকারিতা বাড়ানোর জন্য অন্যান্য সূচকগুলি একত্রিত হতে পারে।

কৌশল অপ্টিমাইজেশান পরামর্শ

আরও অপ্টিমাইজেশনের সুযোগ রয়েছেঃ

  1. অপ্রয়োজনীয় পজিশন এড়াতে সামগ্রিক বাজার পরিস্থিতি বিচার করার জন্য অন্যান্য সরঞ্জাম অন্তর্ভুক্ত করুন।

  2. স্পন্দন সূচক যোগ করুন যাতে উইপসো পরিসীমা এড়ানো যায়।

  3. দামের প্যাটার্নগুলি আরও ভালভাবে ধরার জন্য চলমান গড় পরামিতিগুলিকে অনুকূল করুন।

  4. আরও নমনীয়তার জন্য দুই বছরের সর্বোচ্চ প্যারামিটারকে গতিশীলভাবে অনুকূল করতে মেশিন লার্নিং ব্যবহার করুন।

সিদ্ধান্ত

সংক্ষেপে, এটি একটি অনন্য দীর্ঘমেয়াদী ব্রেকআউট কৌশল, যার মূল বিষয় হল দুই বছরের উচ্চ মূল্য স্তর এবং ১৩ দিনের EMA লাইন প্রবেশ ফিল্টার হিসাবে কাজ করে। এর কিছু সুবিধা রয়েছে তবে উন্নতির সুযোগও রয়েছে, যা আরও গবেষণা এবং অনুসন্ধানের যোগ্য।


/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-25 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/
// © Part Timer

//This script accepts from and to date parameter for backtesting. 
//This script generates white arrow for each buying signal

//@version=4
strategy("AMRS_LongOnly_PartTimer", overlay = true)

//i_endTime = input(defval = timestamp("02 Jun 2021 15:30 +0000"), title = "End Time", type=input.time)

StartYear=input(defval = 2000, title ="Start Year", type=input.integer)
StartMonth=input(defval = 01, title ="Start Month", type=input.integer)
StartDate=input(defval = 01, title ="Start Date", type=input.integer)

endYear=input(defval = 2021, title ="End Year", type=input.integer)
endMonth=input(defval = 06, title ="End Month", type=input.integer)
endDate=input(defval = 03, title ="End Date", type=input.integer)

ema11=ema(close,11)
ema13=ema(close,13)
ema21=ema(close,21)

afterStartDate = true
//g=bar_index==1
//ath()=>
    //a=0.0
    //a:=g ? high : high>a[1] ? high:a[1]
    
//a = security(syminfo.tickerid, 'M', ath(),lookahead=barmerge.lookahead_on)

newHigh = (high > highest(high,504)[1])
//plot down arrows whenever it's a new high
plotshape(newHigh, style=shape.triangleup, location=location.abovebar, color=color.green, size=size.tiny)
b=highest(high,504)[1]
VarChk=((b-ema13)/b)*100
TrigLow = (low <= ema13) and (low >= ema21) and (VarChk <= 10)
plotshape(TrigLow, style=shape.triangleup, location=location.belowbar, color=color.white, size=size.tiny)
ExitPrice=(ema21 - (ema21*0.05))
DrawPrice=(b - (b*0.20))
stopprice=0.0
if (close <= ExitPrice)
    stopprice := ExitPrice
if (close <= DrawPrice)
    stopprice := DrawPrice

if (TrigLow and afterStartDate)
    strategy.entry("Long", strategy.long)

strategy.exit("exit","Long", stop=stopprice)
//beforeEndDate = (time < i_endTime)
beforeEndDate = (time >= timestamp(syminfo.timezone,endYear, endMonth, endDate, 0, 0))
if (beforeEndDate)
    strategy.close_all()

আরো