
এই কৌশলটি সুপরিচিত সিলিং ট্রেডিং পদ্ধতির উপর ভিত্তি করে তৈরি করা হয়েছে, ডনচিয়ান চ্যানেলের সূচকটি মূল্যের ব্রেকডাউন নির্ধারণের জন্য এবং এটিআর সূচকের সাথে মিলিত হয়ে স্টপ লস সেট করে ট্রেন্ড ট্র্যাকিংয়ের জন্য। কৌশলটির সুবিধা হ’ল প্রত্যাহার নিয়ন্ত্রণের ক্ষমতা শক্তিশালী, একক স্টপকে কার্যকরভাবে নিয়ন্ত্রণ করতে পারে এবং ধারাবাহিক ক্ষতির সম্ভাবনা হ্রাস করতে পারে। তবে কৌশলটি ট্রেডিং জাতের সাথে দুর্বল অভিযোজনযোগ্য এবং চ্যানেলের প্যারামিটারগুলি অপ্টিমাইজ করার প্রয়োজন। সামগ্রিকভাবে, কৌশলটি সিলিং ট্রেডিং পদ্ধতির প্রবেশদ্বার সংস্করণ হিসাবে কাজ করে, যা সিলিং ট্রেডিং পদ্ধতির কার্যকারিতা যাচাই করতে ব্যবহৃত হতে পারে এবং এটি পরিমাণগত ব্যবসায়ের ভিত্তি কৌশলগুলির মধ্যে একটি হতে পারে।
এই কৌশলটি মূলত দুটি সূচকের উপর ভিত্তি করে তৈরি করা হয়েছেঃ ডোনচিয়ান চ্যানেল এবং এটিআর।
ডোনচিয়ান চ্যানেলটি সর্বোচ্চ এবং সর্বনিম্ন দামের দ্বারা গণনা করা হয়। কৌশলটি 20 দিনের জন্য চ্যানেলের দৈর্ঘ্য নির্ধারণ করে, 20 দিনের মধ্যে সর্বোচ্চ এবং সর্বনিম্ন দামের চ্যানেল আঁকতে। যখন দাম চ্যানেলটি অতিক্রম করে, তখন একটি কেনার সংকেত উত্পন্ন হয়; যখন দাম চ্যানেলটি অতিক্রম করে, তখন একটি বিক্রয় সংকেত উত্পন্ন হয়।
এটিআর সূচকটি বাজারের অস্থিরতা পরিমাপ এবং স্টপ লস সেট করার জন্য ব্যবহৃত হয়। ডিফল্ট এটিআর চক্রটি 20 দিনের জন্য সেট করা হয়েছে। কৌশলটি এটিআর এর দ্বিগুণ হিসাবে স্টপ লস হিসাবে রয়েছে।
লেনদেনের লজিকঃ
যখন দাম চ্যানেলের উপরের অংশে প্রবেশ করে, তখন অতিরিক্ত প্রবেশ করুন।
স্টপ লস হল প্রবেশের সময় নিম্নতম বিন্দু বিয়োগ ATR এর দ্বিগুণ।
যখন দাম চ্যানেলের নীচে ভেঙে যায়, তখন পল্টু পজিশনটি সমতল করা হয়।
যখন দাম চ্যানেলের নিচের অংশে প্রবেশ করে, তখন খালি করে প্রবেশ করুন।
স্টপ লস হল প্রবেশের সময় উচ্চতম বিন্দু এবং এটিআর এর দ্বিগুণ।
যখন দাম চ্যানেলের উপরের দিকে ভেঙ্গে যায়, তখন শীর্ষস্থানটি খালি থাকে।
সব মিলিয়ে, এই কৌশলটি ট্রেন্ডের দিকনির্দেশনা এবং প্রবেশের সময় নির্ধারণের জন্য ডোনচিয়ান চ্যানেলের উপর নির্ভর করে এবং এটিআর সেট স্টপ লস দিয়ে ঝুঁকি নিয়ন্ত্রণ করে এবং ট্রেন্ডের উপর নজরদারি করে।
এই কৌশলটির প্রধান সুবিধাগুলো হলঃ
প্রত্যাহার নিয়ন্ত্রণ ক্ষমতা শক্তিশালী। এটিআর সূচকটি স্টপ লস সেট করার জন্য ব্যবহার করা হয়, যা একক ক্ষতির কার্যকর নিয়ন্ত্রণ করতে পারে।
প্রবণতা ট্র্যাকিং বাস্তবায়িত। Donchian চ্যানেল কার্যকরভাবে মূল্য ব্রেকিং বিচার করতে পারে, প্রবণতা রূপান্তর নির্দেশ।
এটিআর সূচকটি বাজারের অস্থিরতা বিবেচনা করে এবং স্টপ লস সেটিংটি বিভিন্ন জাতের বৈশিষ্ট্যগুলির সাথে আরও সামঞ্জস্যপূর্ণ।
এই কৌশলগুলি সহজ, সুস্পষ্ট এবং সহজেই বোঝা যায়।
পাইথন ভাষায় লেখা এবং অপ্টিমাইজ করার জন্য নমনীয় কৌশল রয়েছে।
এই কৌশলটির কিছু ঝুঁকিও রয়েছে যা সম্পর্কে আমাদের সতর্ক থাকতে হবেঃ
চ্যানেলের পরামিতিগুলি অপ্টিমাইজ করা দরকার। বিভিন্ন জাত এবং সময়কালের জন্য, বাজারের বৈশিষ্ট্যগুলির সাথে খাপ খাইয়ে নিতে চ্যানেলের পরামিতিগুলিকে সামঞ্জস্য করতে হবে।
ক্রমাগত ক্ষতির ঝুঁকি। অস্বাভাবিক পরিস্থিতিতে, স্বল্প সময়ের মধ্যে একাধিক ক্ষতির কারণ হতে পারে, যার ফলে বড় ক্ষতি হতে পারে।
এটিআর প্যারামিটারগুলি পরীক্ষা করা দরকার। এটিআর প্যারামিটারগুলি সরাসরি ক্ষতি বন্ধের প্রভাবকে প্রভাবিত করে এবং বিভিন্ন জাত এবং ওঠানামা পরিবেশে সামঞ্জস্য করা দরকার।
ট্রেডিং ফ্রিকোয়েন্সি খুব বেশি হতে পারে। ট্রেন্ডিং অস্পষ্ট এবং অস্থির বাজারগুলিতে অতিরিক্ত ক্রস-সিগন্যাল তৈরি হতে পারে।
ট্রেন্ডিংয়ের ক্ষেত্রে, ট্রেন্ডিং কৌশলগুলি মূলত স্টপ লস এবং ট্রেন্ডিংয়ের পুরো উত্থানকে কার্যকরভাবে ক্যাপচার করতে পারে না।
কিছু অস্বাভাবিক পরিস্থিতিতে, দামের উঁচুতে উঠা সরাসরি ক্ষতির কারণ হতে পারে।
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে অপ্টিমাইজ করা যায়ঃ
বিভিন্ন জাতের জন্য বিভিন্ন প্যারামিটারের উপযুক্ততা পরীক্ষা করার জন্য চ্যানেলের প্যারামিটারগুলি অপ্টিমাইজ করুন।
অস্থিরতার সময় অতিরিক্ত সংকেত এড়াতে ফিল্টারিংয়ের শর্তগুলি যুক্ত করুন। ব্রেকথ্রু বা লেনদেনের পরিমাণ ফিল্টারিং বিবেচনা করা যেতে পারে।
এটিআর চক্রের প্যারামিটারগুলিকে অপ্টিমাইজ করুন এবং বিভিন্ন প্যারামিটারগুলির ক্ষতির প্রভাব পরীক্ষা করুন।
পিরামিড এন্ট্রি কৌশল যোগ করুন, ট্রেন্ডিং পরিস্থিতিতে অতিরিক্ত পজিশন রাখুন, লাভের জায়গা বাড়ান।
অন্যান্য সূচকগুলির সাথে মিলিত হয়ে ফিল্টারিংয়ের কার্যকারিতা বাড়ায়। যেমন MACD, KD ইত্যাদি সূচকগুলি প্রবণতার পরিস্থিতি নির্ধারণ করে, বিপরীত ট্রেডিং এড়াতে পারে।
স্টপ লস পয়েন্টের উপর ভিত্তি করে লেনদেনের খরচ অপ্টিমাইজ করুন যেমন স্লাইড পয়েন্ট, ফিজ ইত্যাদি।
বিভিন্ন প্রজাতির অভিযোজনযোগ্যতা পরীক্ষা করুন, নির্দিষ্ট প্রজাতির জন্য প্যারামিটারগুলি সামঞ্জস্য করুন।
এই কৌশলটি সমুদ্র সৈকত ব্যবসায়ের আইনের একটি প্রারম্ভিক সংস্করণ হিসাবে কাজ করে। সামগ্রিকভাবে, কৌশলটি সহজ এবং স্পষ্ট, প্রত্যাহারের নিয়ন্ত্রণের ক্ষমতা শক্তিশালী এবং সমুদ্র সৈকত ব্যবসায়ের নীতি কার্যকরভাবে যাচাই করতে পারে। তবে এই কৌশলটি ব্যবসায়ের জাতের সাথে দুর্বলভাবে অভিযোজনযোগ্য, কৌশলটির কার্যকারিতা চালানোর জন্য বিভিন্ন জাতের উপর ভিত্তি করে নির্দিষ্ট প্যারামিটারগুলি অপ্টিমাইজ করার প্রয়োজন। প্যারামিটার অপ্টিমাইজেশন, ফিল্টার শর্তাদি বৃদ্ধি ইত্যাদির উন্নতির সাথে সাথে এই কৌশলটি পরিমাণগত ব্যবসায়ের অন্যতম মৌলিক প্রবণতা ট্র্যাকিং কৌশল হতে পারে।
/*backtest
start: 2022-10-10 00:00:00
end: 2023-10-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
//Based on Turtle traders strategy: buy/sell on Donchian breakouts and stop loss on ATR 2x
// initial version considerations :
//// 1. Does not consider filter for avoiding new entries after winning trades (filtering rule from Turtle Strategy on 20 day breakout strategy)
//// 2. Does not consider pyramiding (aditional entries after 1N price movements)
strategy("Turtle trading strategy (Donchian/ATR)", overlay=true)
enter_period = input(20, minval=1, title="Enter Channel")
exit_period = input(10, minval=1, title="Exit Channel")
offset_bar = input(0,minval=0, title ="Offset Bars")
direction = input("Long",options=["Long","Short"],title="Direction")
max_length = max(enter_period,exit_period)
atrmult = input(2,title="ATR multiplier (Stop Loss)")
atrperiod = input(20,title="ATR Period")
closed_pos = false
dir_long = direction == "Long"? true : false
atr = atr(atrperiod)
upper = dir_long ? highest(enter_period): highest(exit_period)
lower = dir_long ? lowest(exit_period): lowest(enter_period)
atrupper = close + atr
atrlower = close - atr
plotted_atr = dir_long ? atrlower : atrupper
//basis = avg(upper, lower)
l = plot(lower, style=line, linewidth=3, color=lime, offset=1)
u = plot(upper, style=line, linewidth=3, color=lime, offset=1)
a = plot(plotted_atr, style=line,linewidth=2,color=red,offset=1)
//plot(basis, color=yellow, style=line, linewidth=1, title="Mid-Line Average")
//break upper Donchian (with 1 candle offset) (buy signal)
break_up = (close >= upper[1])
//break lower Donchian (with 1 candle offset) (sell signal)
break_down = (close <= lower[1])
stop_loss = dir_long ? (close<=plotted_atr[1]) : (close>=plotted_atr[1])
if break_up and dir_long
strategy.entry("buy", strategy.long, 1)
closed_pos :=false
if (break_down or stop_loss) and dir_long
strategy.close("buy")
if break_down and not dir_long
strategy.entry("sell", strategy.short, 1)
closed_pos :=false
if (break_up or stop_loss) and not dir_long
strategy.close("sell")
closed_pos :=true
losing_trade = strategy.equity[0]<strategy.equity[1]
//plotshape(losing_trade,text="Losing!")
plotshape(stop_loss,style=dir_long?shape.labeldown:shape.labelup,text="Stop!")
//plot(strategy.equity)