এই কৌশলটির নাম
এই কৌশলটির মূল সূচক হ'ল ডনচিয়ান চ্যানেল। ডনচিয়ান চ্যানেলটি এন-দিনের সময়কালে সর্বোচ্চ এবং সর্বনিম্ন দামের ওঠানামা পরিসীমা নিয়ে গঠিত। যদি দাম চ্যানেলের উপরের রেল দিয়ে ভেঙে যায় তবে এটি একটি দীর্ঘ সংকেত হবে; যদি এটি চ্যানেলের নিম্ন রেল দিয়ে ভেঙে যায় তবে এটি একটি সংক্ষিপ্ত সংকেত হবে। এই কৌশলটি সংকেত দেওয়ার জন্য দ্রুত ডনচিয়ান চ্যানেল (10 দিন) এবং হ্রাস বন্ধ করতে ধীর ডনচিয়ান চ্যানেল (20 দিন) ব্যবহার করে।
এছাড়াও, এই কৌশলটি সংকেতগুলি ফিল্টার করার জন্য দুটি চলমান গড় রেখা (50 দিনের লাইন এবং 125 দিনের লাইন) প্রবর্তন করে। কেবলমাত্র যখন দ্রুত চলমান গড় রেখা ধীর চলমান গড় রেখার উপরে অতিক্রম করে, তখন দীর্ঘ অবস্থানগুলি বাণিজ্য করা হবে; কেবলমাত্র যখন দ্রুত চলমান গড় রেখা ধীর চলমান গড় রেখার নীচে অতিক্রম করে, তখন শর্ট অবস্থানগুলি বাণিজ্য করা হবে। এটি কার্যকরভাবে কিছু মিথ্যা সংকেত ফিল্টার করতে পারে।
এই কৌশলটির খোলার শর্তগুলি হলঃ দাম ডনচিয়ান চ্যানেলের উপরের রেলটি ভেঙে দেয় এবং দ্রুত চলমান গড় রেখা ধীর চলমান গড় রেখার উপরে অতিক্রম করে। যখন উভয় শর্ত পূরণ হয়, তখন লং পজিশন খোলা হবে; দাম ডনচিয়ান চ্যানেলের নিম্ন রেলটি ভেঙে দেয় এবং দ্রুত চলমান গড় রেখা ধীর চলমান গড় রেখার নীচে অতিক্রম করে, তারপরে শর্ট পজিশন খুলুন। বন্ধের শর্তগুলি হ'ল যখন দাম বিপরীত ধীর চলমান ডনচিয়ান চ্যানেলের সীমানা স্পর্শ করে।
এই কৌশলটির সুবিধাগুলো হল:
ট্রেন্ডের দিকনির্দেশনা নির্ধারণের জন্য ডনচিয়ান চ্যানেল ব্যবহার করে, ব্যাকটেস্ট প্রভাবটি বড় প্রবণতা সফলভাবে ধরার জন্য ভাল;
চলমান গড়ের ফিল্টার যোগ করা কিছু মিথ্যা সংকেত ফিল্টার করতে পারে এবং ক্ষতি এড়াতে পারে;
দ্রুত এবং ধীর গতির ডনচেইন চ্যানেল এবং চলমান গড়ের সংমিশ্রণটি ট্রেডিং ফ্রিকোয়েন্সি এবং স্টপ লস নির্ভুলতার ভারসাম্য বজায় রাখতে পারে;
একক ক্ষতি নিয়ন্ত্রণের জন্য স্টপ লস মেশিনের মাধ্যমে ঝুঁকি ভালভাবে নিয়ন্ত্রিত হয়।
এই কৌশলটির কিছু ঝুঁকিঃ
শক মার্কেটে ছোট ছোট অর্ডার হারাতে পারে।
যখন প্রবণতা বিপরীত হয়, চলমান গড়ের ফিল্টারিং খোলার খরচ বৃদ্ধি করবে;
উঁচু বাজারে, স্টপ লস অনুসরণ করা যেতে পারে।
প্রতিকার ও সমাধানঃ
বিভিন্ন বাজারের সাথে মানিয়ে নিতে প্যারামিটারগুলি যথাযথভাবে সামঞ্জস্য করুন, ডনচিয়ান চক্রটি সংক্ষিপ্ত করুন, চলমান গড় চক্রটি হ্রাস করুন।
প্রধান প্রবণতার বিরুদ্ধে অবস্থান তৈরি করা এড়ানোর জন্য প্রধান প্রবণতা সম্পর্কে বিচার বৃদ্ধি করুন।
কৌশলটি নিম্নলিখিত দিকগুলিতে অপ্টিমাইজ করা যেতে পারেঃ
উদাহরণস্বরূপ, ভলিউম চালু করুন, ভলিউম বড় হলেই পজিশন খুলুন;
গরম এলাকার বিচার বৃদ্ধি করুন। অবস্থান খোলার সময় গরম এলাকা এড়ানোর জন্য সমর্থন, চাপ, ব্যান্ড, নিদর্শন ইত্যাদির সাথে একত্রিত করুন;
স্টপ লস কৌশলগুলি অপ্টিমাইজ করুন। স্টপ লসকে আরও স্মার্ট করার জন্য স্টপ লস ট্র্যাকিং, অস্থিরতা স্টপ লস, টাইম স্টপ লস ইত্যাদি প্রবর্তন করুন।
সাধারণভাবে, এই কৌশলটি একটি খুব সাধারণ এবং সহজ প্রবণতা অনুসরণকারী কৌশল। এটি ডনচিয়ান চ্যানেলের মাধ্যমে দিকনির্দেশ নির্ধারণ করে এবং চলমান গড়ের মাধ্যমে সংকেতগুলি ফিল্টার করে ভাল ব্যাকটেস্ট ফলাফল উপলব্ধি করে। এই কৌশলটি বড় প্রবণতা অনুসরণকারী বিনিয়োগকারীদের জন্য উপযুক্ত, ভাল ঝুঁকি নিয়ন্ত্রণ এবং বাস্তব ট্রেডিংয়ে বাস্তবায়ন করা সহজ। কিছু পরামিতি এবং নিয়মগুলি অনুকূল করে, জয়ের হার এবং লাভজনকতা আরও উন্নত করা যেতে পারে।
/*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"}] */ //@version=2 // Coded by Vladkos strategy("Donchian strategy with filter", overlay=true,default_qty_type = strategy.percent_of_equity, default_qty_value = 4,pyramiding=5) fromyear = input(2017, defval = 2018, minval = 1800, maxval = 2100, title = "From Year") toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month") fromday = input(21, defval = 01, minval = 01, maxval = 31, title = "From day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day") term = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)) ATR=input(20,minval=1) needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") needstoploss= input(true,defval=true,title="Stop LOSS") ///////////ATR tra=atr(ATR) ////////////Переменные Donchian_slow=input(20,minval=1) Donchian_fast=input(10,minval=1) Slow_EMA=input(125,minval=1) Fast_EMA=input(50,minval=1) /////////// Медленный Дончан lower = lowest(Donchian_slow) upper = highest(Donchian_slow) basis = avg(upper, lower) plot(lower,color=blue) plot(upper,color=blue) /////////// быстрый Дончан lowerF = lowest(Donchian_fast) upperF = highest(Donchian_fast) basisF = avg(upperF, lowerF) plot(lowerF,color=red) plot(upperF,color=red) ////////// Скользящие средние ema_S=ema(close,Slow_EMA) ema_F=ema(close,Fast_EMA) plot(ema_S,color=red) plot(ema_F,color=green) ///////// Условия сделок long_condition= close>=upper[1] and ema_F>ema_S long_exit= close<lowerF[1] short_condition=close<=lower[1] and ema_F<ema_S short_exit=close>upperF[1] ////////// Отправка ордеров strategy.entry("Long",strategy.long,when=long_condition and term and needlong==true) strategy.exit("stop loss","Long",stop=strategy.position_avg_price-(tra*2),when= (needstoploss==true)) strategy.close("Long",when=long_exit and (time < timestamp(toyear, tomonth, today, 23, 59))) strategy.entry("Short",strategy.short,when=short_condition and term and (needshort==true)) strategy.exit("stoploss","Short",stop=strategy.position_avg_price+(tra*2),when= (needstoploss==true)) strategy.close("Short",when=short_exit and (time < timestamp(toyear, tomonth, today, 23, 59))) if time > timestamp(toyear, tomonth, today, 23, 59) strategy.close_all()