
বিপরীত ব্রেকিং ট্রেডিং কৌশল হল এমন একটি ট্রেডিং কৌশল যা মূল্যের ক্রমাগত উত্থান বা পতনের উপর ভিত্তি করে বিপরীত ক্রিয়াকলাপ পরিচালনা করে। এই কৌশলটি মূল্যের ক্রমাগত উত্থান বা পতনের একটি চক্র স্থাপন করে এবং দামের একটি নির্দিষ্ট প্রবণতা তৈরি হওয়ার পরে বিপরীত ক্রিয়াকলাপ পরিচালনা করে।
এই কৌশলটি মূলত নিম্নলিখিত অংশগুলির মাধ্যমে বাস্তবায়িত হয়ঃ
সেট করুন ধারাবাহিকভাবে দামের উত্থান ও পতনের চক্রের দৈর্ঘ্য, অর্থাৎ consecutiveBarsUp এবং consecutiveBarsDown, এবং বর্তমান চক্রের দামের প্রবণতা সেট দৈর্ঘ্যের পরে ট্রেডিং সিগন্যাল ট্রিগার করে।
বর্তমান মূল্যের তুলনায় পূর্ববর্তী চক্রের মূল্যের পতন গণনা করুন, বর্তমান ধারাবাহিক উত্থান বা পতনের চক্রের দৈর্ঘ্য গণনা করুন ups এবং dns
সময়সীমা সেট করুন, সময়_ সেকেন্ডের মাধ্যমে সীমাবদ্ধ করুন, যা কেবলমাত্র সময়সীমার মধ্যে কাজ করবে।
প্রতিদিনের ট্রেডিং সময় সেট করুন, শুধুমাত্র সেট করা সময়ের মধ্যে ট্রেডিং সিগন্যাল প্রেরণ সীমিত করুন।
যখন দামের ধারাবাহিক উত্থান চক্রটি সেট দৈর্ঘ্যের সাথে মিলিত হয়, তখন strategy.long এর মাধ্যমে একাধিক সংকেত প্রেরণ করা হয়; যখন দামের ধারাবাহিক পতনের চক্রটি সেট দৈর্ঘ্যের সাথে মিলিত হয়, তখন strategy.short এর মাধ্যমে একটি শূন্য সংকেত প্রেরণ করা হয়।
স্টপ এবং স্টপ দাম সেট করা যেতে পারে। স্বল্পমেয়াদী স্টপ সেট করুন যখন অতিরিক্ত হয়, দীর্ঘমেয়াদী স্টপ সেট করুন যখন খালি হয়; দীর্ঘমেয়াদী স্টপ সেট করুন যখন অতিরিক্ত হয়, স্বল্পমেয়াদী স্টপ সেট করুন যখন খালি হয়।
ট্রেডিং সিগন্যাল প্রেরণের সময় আপনি একটি বার্তা প্রম্পট সেট করতে পারেন।
উপরোক্ত প্যারামিটার এবং মূল্যের উপর ভিত্তি করে, যখন এটি উপযুক্ত হয় তখন একটি বেশি বা কম সংকেত দেওয়া হয়।
এই কৌশলটির কয়েকটি সুবিধা রয়েছেঃ
দামের বিপরীতমুখী পয়েন্টগুলি ধরা, বিপরীতমুখী অপারেশনগুলি আরও ভাল মুনাফা অর্জন করতে পারে। যখন দামের প্রবণতা তৈরি হয়, তখন বিপরীতমুখী অপারেশন করা হয়, যখন দামের বিপরীতমুখী হয় তখন লাভ করা যায়।
কনফিগারযোগ্য প্যারামিটারগুলি নমনীয়, আপনি বাজার অনুযায়ী প্যারামিটারগুলি সামঞ্জস্য করতে পারেন। আপনি ক্রমাগত উত্থান এবং পতনের চক্রের সংখ্যা নিয়ন্ত্রণ করতে পারেন, স্টপ স্টপ পয়েন্টটি সামঞ্জস্য করতে পারেন, ব্যবসায়ের সময়সীমা সীমাবদ্ধ করতে পারেন এবং প্রকৃত পরিস্থিতি অনুসারে প্যারামিটার অপ্টিমাইজ করতে পারেন।
স্টপ লস স্টপ যোগ করা যায়, ঝুঁকি নিয়ন্ত্রণ করা যায়। অতিরিক্ত কমানোর পরে স্টপ লস এবং স্টপ স্টপ প্রিসেট করা যায়, যা ট্রেডিং ঝুঁকি নিয়ন্ত্রণে সহায়তা করে।
স্বয়ংক্রিয় লেনদেনের জন্য লেনদেনের প্রম্পট বার্তা সেট করতে পারেন। লেনদেনের সংকেত প্রেরণের সময় বার্তা প্রম্পট সেট করতে পারেন, স্বয়ংক্রিয় লেনদেনের সিস্টেমের সাথে কাজ করতে পারেন।
রিটার্ন সময়সীমা সেট করা যায়, কৌশল পরীক্ষা করা সহজ। রিটার্ন সময়সীমা সেট করা হয়, যাতে বিভিন্ন বাজারের অবস্থার মধ্যে কৌশল কার্যকর হয়।
এই কৌশলটির কিছু ঝুঁকি রয়েছে যা সম্পর্কে সতর্ক থাকা দরকারঃ
গুরুত্বপূর্ণ সংবাদ ইভেন্টগুলি এড়ানো উচিত। গুরুত্বপূর্ণ সংবাদ প্রকাশের সময় দামের গতিবিধি নির্ধারণ করা যায় না, কৌশল একই সাথে একাধিক স্বল্প-মূল্যের সংকেত প্রেরণ করে, ক্ষতির কারণ হয়। গুরুত্বপূর্ণ আর্থিক সংবাদ প্রকাশের সময় এড়ানো উচিত।
বিপরীতমুখী প্রবণতা অস্পষ্ট হলে এটি খুব বেশি কার্যকর হয় না। প্রবণতা অস্পষ্ট হলে বিপরীতমুখী অপারেশনটি খুব কার্যকর হয় না এবং সতর্কতার সাথে ব্যবহার করা উচিত।
রিটার্নিং ডেটা ফিটনেস ঝুঁকি। কৌশলটি অপ্টিমাইজ করা উচিত যাতে রিটার্নিং ডেটার উপর অত্যধিক নির্ভরতা এড়ানো যায়, রিটার্নিং ডেটা ভবিষ্যতের প্রবণতা প্রতিনিধিত্ব করে না। রিয়েল-টাইমে প্যারামিটারগুলি যথাযথভাবে সামঞ্জস্য করা উচিত।
ট্রেডিং ফ্রিকোয়েন্সি খুব বেশি হলে, এটি সহজেই বাজারজাত করা যায়। যদি চক্রটি খুব ছোট হয়, তবে ট্রেডিং ফ্রিকোয়েন্সি খুব বেশি হয়, যা দীর্ঘমেয়াদী স্থিতিশীল মুনাফার পক্ষে ক্ষতিকর।
স্টপ স্টপ কৌশলটি যথাযথভাবে অপ্টিমাইজ করা যেতে পারে এবং ঝুঁকি হ্রাস করা যেতে পারে। বিদ্যমান ফিক্সড স্টপ স্টপগুলি ট্রেন্ড ট্র্যাকিং স্টপ ইত্যাদির জন্য আরও অনুকূলিত করা যেতে পারে।
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে আরও উন্নত করা যেতে পারেঃ
প্রবণতা নির্ধারণের প্রক্রিয়া বাড়ানো, প্রবণতাহীন বাজারের বিশৃঙ্খল বিপর্যয় এড়ানো। আপনি মূল্যের ওঠানামা, চ্যানেল ইত্যাদির মতো সূচকগুলি সনাক্ত করতে পারেন, প্রবণতার মাত্রা নির্ধারণ করতে পারেন, মূল্যের বিপর্যয়ের পয়েন্টগুলি মিস করবেন না।
স্টপ লস স্টপ কৌশলটি অপ্টিমাইজ করুন যাতে এটি বাজার ওঠানামার সাথে স্বয়ংক্রিয়ভাবে সামঞ্জস্য করতে পারে। স্টপ লস স্টপ সেটিংকে আরও বুদ্ধিমান করার জন্য ব্যালেন্স শতাংশের ক্ষতি, এটিআর স্টপ লস এবং অন্যান্য পদ্ধতি ব্যবহার করা যেতে পারে।
যোগ করা হয়েছে ভলিউম ক্ষমতা নির্দেশক বিচার। ট্রেডিং ভলিউম পরিবর্তনের মতো সূচকগুলির সাথে মিলিত, কেবলমাত্র কে লাইন আকৃতির উপর ভিত্তি করে উত্পন্ন ভুল সংকেত এড়ানো।
একাধিক জাতের সমন্বয় বিভিন্ন জাতের জন্য কৌশল প্রয়োগ করুন, সমন্বয় করুন, একক জাতের ঝুঁকি বিচ্ছিন্ন করুন
প্যারামিটার অপ্টিমাইজেশান এবং মেশিন লার্নিং আরও ঐতিহাসিক তথ্য সংগ্রহ করুন, মেশিন লার্নিং পদ্ধতি ব্যবহার করে প্যারামিটারগুলি স্বয়ংক্রিয়ভাবে অপ্টিমাইজ করুন, যাতে কৌশলগুলি আরও স্থিতিশীল হয়
বিপরীত ব্রেকিং ট্রেডিং কৌশলটি মূল্যের বিপরীত বিন্দুটি ক্যাপচার করে বিপরীতভাবে পরিচালনা করে, একটি ভাল ট্রেডিং সংকেত পেতে পারে। এই কৌশলটির সুবিধাটি হ’ল এটি নমনীয়, ঝুঁকি নিয়ন্ত্রণযোগ্য এবং স্বয়ংক্রিয় ব্যবসায়ের জন্য উপযুক্ত। তবে কিছু ঝুঁকিও রয়েছে, দীর্ঘমেয়াদী স্থিতিশীল লাভের জন্য প্যারামিটার এবং কৌশলগুলির ক্রমাগত অপ্টিমাইজেশন এবং পরিমার্জনের প্রয়োজন।
/*backtest
start: 2023-10-17 00:00:00
end: 2023-10-24 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
// Strategy
strategy("Up/Down Strategy - Contrarian", overlay=true, initial_capital = 10000, default_qty_value = 10000, default_qty_type = strategy.cash)
consecutiveBarsUp = input(1, title='Consecutive Bars Up')
consecutiveBarsDown = input(1, title='Consecutive Bars Down')
price = close
ups = 0.0
ups := price > price[1] ? nz(ups[1]) + 1 : 0
dns = 0.0
dns := price < price[1] ? nz(dns[1]) + 1 : 0
// Strategy Backtesting
startDate = input(timestamp("2021-01-01T00:00:00"), type = input.time, title='Backtesting Start Date')
finishDate = input(timestamp("2021-12-31T00:00:00"), type = input.time, title='Backtesting End Date')
time_cond = true
//Time Restriction Settings
startendtime = input("", title='Time Frame To Enter Trades')
enableclose = input(false, title='Enable Close Trade At End Of Time Frame')
timetobuy = true
timetoclose = true
// Stop Loss & Take Profit Tick Based
enablesltp = input(false, title='Enable Take Profit & Stop Loss')
stopTick = input(5.0, title='Stop Loss Ticks', type=input.float) / 100
takeTick = input(10.0, title='Take Profit Ticks', type=input.float) / 100
longStop = strategy.position_avg_price - stopTick
shortStop = strategy.position_avg_price + stopTick
shortTake = strategy.position_avg_price - takeTick
longTake = strategy.position_avg_price + takeTick
plot(strategy.position_size > 0 and enablesltp ? longStop : na, style=plot.style_linebr, color=color.red, linewidth=1, title="Long Fixed SL")
plot(strategy.position_size < 0 and enablesltp ? shortStop : na, style=plot.style_linebr, color=color.red, linewidth=1, title="Short Fixed SL")
plot(strategy.position_size > 0 and enablesltp ? longTake : na, style=plot.style_linebr, color=color.green, linewidth=1, title="Long Take Profit")
plot(strategy.position_size < 0 and enablesltp ? shortTake : na, style=plot.style_linebr, color=color.green, linewidth=1, title="Short Take Profit")
// Alert messages
message_enterlong = input("", title="Long Entry message")
message_entershort = input("", title="Short Entry message")
message_closelong = input("", title="Close Long message")
message_closeshort = input("", title="Close Short message")
// Strategy Execution
if (dns >= consecutiveBarsDown) and time_cond and timetobuy
strategy.entry("Long", strategy.long, stop = high + syminfo.mintick, alert_message = message_enterlong)
if (ups >= consecutiveBarsUp) and time_cond and timetobuy
strategy.entry("Short", strategy.short, stop = low + syminfo.mintick, alert_message = message_entershort)
if strategy.position_size < 0 and timetoclose and enableclose
strategy.close_all(alert_message = message_closelong)
if strategy.position_size > 0 and timetoclose and enableclose
strategy.close_all(alert_message = message_closeshort)
if strategy.position_size < 0 and enablesltp and time_cond
strategy.exit(id="Close Long", stop=longStop, limit=longTake, alert_message = message_closelong)
if strategy.position_size > 0 and enablesltp and time_cond
strategy.exit(id="Close Short", stop=shortStop, limit=shortTake, alert_message = message_closeshort)