এই কৌশলটির মূল ধারণা হ'ল ডনচিয়ান চ্যানেলগুলির দামের ব্রেকআউটের উপর ভিত্তি করে ট্রেডিং সিদ্ধান্ত নেওয়া। এটি পরিমাণগত কৌশলগুলির প্রবণতা অনুসারে প্রবণতার অন্তর্গত। এটি স্বয়ংক্রিয়ভাবে মূল্য চ্যানেলগুলি সনাক্ত করতে পারে। যখন দাম চ্যানেলের উপরের রেলটি ভেঙে যায়, তখন দীর্ঘ অবস্থানগুলি খোলা হবে। যখন দাম চ্যানেলের নিম্ন রেলের কাছাকাছি বা স্টপ লস পয়েন্টের কাছে ফিরে আসে, তখন অবস্থানগুলি বন্ধ হয়ে যাবে। এই কৌশলটি মাঝারি থেকে দীর্ঘমেয়াদী মূল্য প্রবণতা ক্যাপচার করার লক্ষ্য রাখে এবং সূচক ফিউচারগুলির মতো আর্থিক ডেরিভেটিভগুলির অ্যালগরিদমিক ট্রেডিংয়ের জন্য উপযুক্ত।
এই কৌশলটি ডনচিয়ান চ্যানেল সূচকের উপর ভিত্তি করে। ডনচিয়ান চ্যানেলগুলি একটি নির্দিষ্ট সময়ের মধ্যে সর্বোচ্চ এবং সর্বনিম্ন দাম দ্বারা আঁকা চ্যানেল। এর গণনার পদ্ধতিটি হলঃ
Upper Rail = সর্বশেষ n সময়ের মধ্যে সর্বোচ্চ মূল্য নিম্ন রেল = সর্বশেষ n সময়ের সর্বনিম্ন মূল্য
যখন দামগুলি উপরের রেলটি ভেঙে যায়, তখন এটি দীর্ঘ প্রবণতা শুরু হয়েছে বলে মনে করা হয়। যখন দামগুলি নিম্ন রেলটি ভেঙে যায়, তখন এটি সংক্ষিপ্ত প্রবণতা শুরু হয়েছে বলে মনে করা হয়। এই কৌশলটি কেবলমাত্র উপরের রেলটি ভেঙে যাওয়ার ক্ষেত্রে বিবেচনা করে।
নির্দিষ্ট ট্রেডিং লজিক হলঃ
এই কৌশলটির সুবিধাগুলির মধ্যে রয়েছেঃ
এছাড়াও কিছু ঝুঁকি আছেঃ
সমাধান:
এই কৌশল নিম্নলিখিত ক্ষেত্রে আরও অপ্টিমাইজ করা যেতে পারেঃ
এই কৌশলটির সামগ্রিক ধারণাটি স্পষ্ট এবং বোঝা এবং বাস্তবায়ন করা সহজ। এটি প্রবণতার দিকটি স্বয়ংক্রিয়ভাবে সনাক্ত করতে পরিপক্ক ডোনচিয়ান চ্যানেলগুলি ব্যবহার করে। বিভিন্ন প্রয়োজনের জন্য কনফিগারেশনটিও অত্যন্ত নমনীয়। সঠিক স্টপ লস এবং পরামিতি অপ্টিমাইজেশনের সাথে ভাল ফলাফল অর্জন করা যায়। উপসংহারে, এই কৌশলটির একটি কম শেখার বক্ররেখা রয়েছে তবে যুক্তিসঙ্গত দক্ষতা রয়েছে। এটি একটি স্টার্টার পরিমাণগত ট্রেডিং কৌশল হিসাবে উপযুক্ত।
/*backtest start: 2022-12-07 00:00:00 end: 2023-12-07 00:00:00 period: 1d basePeriod: 1h 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/ // © Giovanni_Trombetta // Strategy to capture price channel breakouts //@version=4 strategy("ChannelsBreakout", max_bars_back=50, overlay=true) instrument = input(1, title = "Select 1: Stock/Forex, 2: Future") money = input(10000, title = "Money for each trade") backtest_start = input(2000, "Insert first year to backtest") period = input(50, title = "Period in bars of Donchian Channel") monetary_stoploss = input(1000, title = "Monetary Stop Loss") quantity = if instrument != 1 1 else int(money / close) upBarrier = highest(high,period) downBarrier = lowest(low,period) up = highest(high,period / 4) down = lowest(low,period / 4) plot(upBarrier, color=color.green, linewidth=2) plot(downBarrier, color=color.red, linewidth=2) plot(up, color=color.lime, linewidth=1) plot(down, color=color.orange, linewidth=2) longCondition = crossover(close, upBarrier[1]) and year >= backtest_start if (longCondition) strategy.entry("Long", strategy.long, quantity, when = strategy.position_size == 0) closeCondition = crossunder(close, down[1]) or down < down[1] if (closeCondition) strategy.close("Long", comment = "Trailing") stop_level = strategy.position_avg_price - monetary_stoploss / strategy.position_size strategy.exit("StopLoss", from_entry = "Long", stop = stop_level) plot(stop_level, color=color.yellow, linewidth=2) // l = label.new(bar_index, na, // text="PineScript Code", color= color.lime, textcolor = color.white, // style=label.style_labelup, yloc=yloc.belowbar, size=size.normal) // label.delete(l[1])