
এই কৌশলটি উচ্চ এবং নিম্ন পয়েন্ট নির্ধারণ করে, যেখানে দামটি বিরতি দেয়। এই কৌশলটি ক্রিপ্টোকারেন্সির দামের প্রবণতা অনুসরণ করে। যখন দাম সর্বোচ্চ পয়েন্টটি অতিক্রম করে তখন এটি আরও বেশি করে এবং যখন দাম সর্বনিম্ন পয়েন্টটি অতিক্রম করে তখন এটি ফাঁকা করে, যা প্রবণতাটি ধরতে সক্ষম করে।
এই কৌশলটি মূলত সমতল চলমান গড়ের ভারসাম্যযুক্ত পদ্ধতির মাধ্যমে দামের একটি সুস্পষ্ট উত্থান বা পতনের প্রবণতা রয়েছে কিনা তা নির্ধারণ করে। বিশেষত, এটি একটি নির্দিষ্ট সময়ের মধ্যে সর্বোচ্চ এবং সর্বনিম্ন দামের পরিসংখ্যান করে, যখন প্রকৃত লেনদেনের দামগুলি পরিসংখ্যানের সর্বোচ্চ মূল্যের চেয়ে বেশি হয়, তখন এটি একটি উত্থান প্রবণতা হিসাবে বিচার করা হয়; যখন প্রকৃত লেনদেনের দামগুলি পরিসংখ্যানের সর্বনিম্ন মূল্যের চেয়ে কম হয়, তখন এটি একটি পতন প্রবণতা হিসাবে বিচার করা হয়।
ওপেন পজিশনের দাম ENTRY প্যারামিটার দিয়ে সেট করা হয়, এবং ক্লিয়ার পজিশনের দাম EXIT প্যারামিটার দিয়ে সেট করা হয়। রিটার্নিং সময়টি প্যারামিটার দিয়েও সেট করা যেতে পারে। এটি প্যারামিটারগুলি সামঞ্জস্য করে সর্বোত্তম কম্বো সমন্বয় খুঁজে পেতে পারে।
বিশেষ করে, এই কৌশলটির মূল যুক্তি হলঃ
এই লজিকাল চক্রের মাধ্যমে, দামের উর্ধ্বমুখী এবং নিম্নমুখী প্রবণতা ধরা যায় এবং ট্রেন্ড ট্র্যাকিং করা যায়।
এই কৌশলটির সবচেয়ে বড় সুবিধা হ’ল প্যারামিটারগুলি সামঞ্জস্য করার মাধ্যমে, প্রবণতার দিকনির্দেশনা না দিয়ে প্রবণতার দিকনির্দেশনা ছাড়াই দামের প্রবণতা স্বয়ংক্রিয়ভাবে ধরা যায়। প্যারামিটারগুলি যথাযথভাবে সেট করা থাকলে, ক্রিপ্টোকারেন্সির দামের ওঠানামা স্বয়ংক্রিয়ভাবে অনুসরণ করা যায়।
এছাড়াও, এই কৌশলটি পরিমাণগত লেনদেনের জন্য খুব উপযুক্ত, এটি সহজেই অর্ডারগুলি স্বয়ংক্রিয় করতে পারে। কোনও ম্যানুয়াল অপারেশনের প্রয়োজন নেই, আবেগময় লেনদেনের ঝুঁকি হ্রাস করে, যা লেনদেনের দক্ষতাকে উল্লেখযোগ্যভাবে বাড়িয়ে তুলতে পারে।
অবশেষে, এই কৌশলটি প্যারামিটারগুলিকে সামঞ্জস্য করে সর্বাধিক উপার্জন করতে পারে। বিভিন্ন ENTRY এবং EXIT প্যারামিটার পরীক্ষা করে, সর্বোত্তম প্যারামিটারগুলি খুঁজে পাওয়া যায় যা উপার্জন সর্বাধিক করে তোলে।
এই কৌশলটির সবচেয়ে বড় ঝুঁকি হল যে প্যারামিটার সেটিংটি ভুলভাবে সেট করা হয়েছে, যা খুব ঘন ঘন ট্রেডিংয়ের কারণ হতে পারে, ট্রেডিং ফি বৃদ্ধি করে এবং স্লাইড পয়েন্টের ক্ষতি করে। যদি ENTRY সেটিংটি খুব কম এবং EXIT সেটিংটি খুব বেশি হয়, তবে ভুয়া ট্রেডিং সিগন্যাল তৈরি করা সহজ।
অন্যদিকে, যদি প্যারামিটারগুলি অনুপযুক্তভাবে সামঞ্জস্য করা হয় তবে দামের প্রবণতাটি সময়মতো ধরতে না পারা এবং ব্যবসায়ের সুযোগগুলি মিস করা হতে পারে। এর জন্য প্রচুর ব্যাক-টেস্টিংয়ের মাধ্যমে সর্বোত্তম প্যারামিটারগুলি খুঁজে বের করতে হবে।
অবশেষে, এই কৌশলটি স্বল্পমেয়াদী বাজারের শব্দগুলির জন্য অত্যধিক সংবেদনশীল, যা ভুল ট্রেডিং সিগন্যাল তৈরি করতে পারে। ট্রেডিং সময়কালের চক্রের প্যারামিটারগুলি যথাযথভাবে সেট করে এটি এড়ানো দরকার।
এই কৌশলটি নিম্নলিখিত উপায়ে আরও উন্নত করা যেতে পারেঃ
স্টপ লজিক যুক্ত করুন। এইভাবে, ক্ষতির পরিমাণ বাড়ার সাথে সাথে ক্ষতির পরিমাণ বাড়তে পারে এবং আরও বড় ক্ষতি এড়ানো যায়।
চলমান গড়ের মতো প্রযুক্তিগত সূচকগুলি ফিল্টার করুন। MA, KDJ ইত্যাদির মতো সূচকগুলি ব্যবহার করে বড় প্রবণতা নির্ধারণ করুন এবং স্বল্পমেয়াদী শব্দগুলিকে অতিরিক্ত লেনদেন থেকে বিরত রাখুন।
অপ্টিমাইজ প্যারামিটার সেটিং লজিক। স্ট্যাটিক সেটিংয়ের পরিবর্তে ENTRY, EXIT প্যারামিটারগুলির একটি স্বনির্ধারিত পরিবর্তন প্রক্রিয়া সেট করা যেতে পারে, যাতে এটি বাজারের পরিবেশের সাথে প্যারামিটারগুলি সামঞ্জস্য করতে পারে।
মেশিন লার্নিং প্রশিক্ষণের সর্বোত্তম প্যারামিটারগুলি ব্যবহার করুন। প্রচুর পরিমাণে ইতিহাসের ডেটা প্রশিক্ষণের মাধ্যমে, বর্তমান বাজারের পরিবেশের জন্য সর্বোত্তম ENTRY এবং EXIT সেটিংস পান।
এই কৌশলটি মূল্যের প্রবণতা ক্যাপচার করে ট্রেডিংকে স্বয়ংক্রিয় করে তোলে। এর সর্বাধিক সুবিধা হ’ল এটি ট্রেডিংয়ে মানুষের আবেগের প্রভাব হ্রাস করতে পারে, ঝুঁকি হ্রাস করতে পারে এবং দক্ষতা বাড়িয়ে তুলতে পারে।
কৌশলগুলির প্রধান ঝুঁকি হল ভুলভাবে প্যারামিটার সেট করা এবং বাজারের শব্দগুলির জন্য অত্যধিক সংবেদনশীল। এটি স্টপ লস, সূচক ফিল্টারিং এবং প্যারামিটার অভিযোজনযোগ্য অপ্টিমাইজেশনের মাধ্যমে উন্নত করা প্রয়োজন।
সামগ্রিকভাবে, এই কৌশলটি একটি সহজ এবং কার্যকর প্রবণতা ট্র্যাকিং কৌশল যা পরিমাণগত এবং স্বয়ংক্রিয় ব্যবসায়ের জন্য উপযুক্ত। ক্রমাগত অপ্টিমাইজেশনের মাধ্যমে কৌশলটির স্থায়িত্ব আরও বাড়ানো যেতে পারে।
/*backtest
start: 2022-12-01 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/
// © JstMtlQC
//@version=4
strategy("Trend Following Breakout",calc_on_order_fills=true,calc_on_every_tick =false, overlay=true, initial_capital=2000,commission_value=.1,default_qty_type = strategy.percent_of_equity, default_qty_value = 100)
/////////////// INPUT ENTRY EXIT
entry= input(100, "ENTRY H/L")
exit= input(50, "EXIT H/L")
/////////////// Backtest Input
FromYear = input(2015, "Backtest Start Year")
FromMonth = input(1, "Backtest Start Month")
FromDay = input(1, "Backtest Start Day")
ToYear = input(2999, "Backtest End Year")
ToMonth = input(1, "Backtest End Month")
ToDay = input(1, "Backtest End Day")
/////////////// Backtest Setting
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)
window() => time >= start and time <= finish ? true : false
/////////////// BUY OPEN PLOT
highestpricelong = highest(high,entry)[1]
plot(highestpricelong, color=color.green, linewidth=2)
/////////////// BUY CLOSE PLOT
lowestpricelong = lowest(high,exit)[1]
plot(lowestpricelong, color=color.green, linewidth=2)
/////////////// SHORT OPEN PLOT
lowestpriceshort = lowest(low,entry)[1]
plot(lowestpriceshort, color=color.red, linewidth=2)
/////////////// SHORT CLOSE PLOT
highestpriceshort = highest(low,exit)[1]
plot(highestpriceshort, color=color.red, linewidth=2)
///////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////// CONDITION LONG SHORT //////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////
/////////////// SHORT
entryshort= crossunder(close, lowestpriceshort)
exitshort= crossover(close,highestpriceshort)
/////////////// LONG
exitlong= crossover(close, lowestpricelong)
entrylong= crossover(close,highestpricelong)
///////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////// LONG and SHORT ORDER //////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////
/////////////// LONG
if (entrylong)
strategy.entry("LongEntry", strategy.long, when = window())
if (exitlong or entryshort)
strategy.close("LongEntry", when=window())
/////////////// SHORT
if (entryshort)
strategy.entry("short", strategy.short, when = window())
if (exitshort or entrylong)
strategy.close("short", when=window())