ইম্পোমেন্টাম ওসিলেশন ট্রেডিং স্ট্র্যাটেজি

লেখক:চাওঝাং, তারিখঃ ২০২৩-১১-২১ 16:57:07
ট্যাগঃ

img

সারসংক্ষেপ

এই কৌশলটি বোলিংজার ব্যান্ডস সূচক উপর ভিত্তি করে, বোলিংজার ব্যান্ডস বিপরীতমুখী এবং গতির ব্রেকআউটের একটি সমন্বিত ট্রেডিং কৌশল বাস্তবায়নের জন্য গতির সূচকগুলির সাথে মিলিত। যখন দাম নীচে থেকে বোলিংজার ব্যান্ডের মাঝারি রেখাটি ভেঙে যায় এবং যখন দাম উপরে থেকে মাঝারি রেখাটি ভেঙে যায় তখন এটি দীর্ঘ হয়। এটি লক্ষ্য ঝুঁকি-পুরষ্কার অনুপাত পূরণ করা হলে অবস্থান বন্ধ করার জন্য প্রবেশ মূল্যের ভিত্তিতে স্টপ লস এবং লাভ গ্রহণও ট্র্যাক করে।

কৌশলগত যুক্তি

কৌশলটি চলমান গড় সূচক হিসাবে বোলিংজার ব্যান্ডের মাঝারি রেখা এসএমএ ব্যবহার করে এবং প্যারাম মাল্ট * স্ট্যাভের মাধ্যমে গতিশীলভাবে ব্যান্ডের প্রস্থ সামঞ্জস্য করে। যখন দাম নীচে থেকে মাঝারি রেখাটি ভেঙে যায়, তখন এটি নির্দেশ করে যে উপরের দিকে গতি অর্জন করা হয়েছে এবং তাই দীর্ঘ হয়। যখন দাম উপরে থেকে মাঝারি রেখাটি ভেঙে যায়, তখন এটি দেখায় যে নিম্নমুখী গতি অর্জন করা হয়েছে এবং তাই শর্ট হয়। দীর্ঘ / শর্ট পজিশনে প্রবেশের পরে, লাভ এবং নিয়ন্ত্রণের ঝুঁকিগুলি ট্র্যাক করতে স্টপ লস এবং লাভের পরামিতিগুলি সেট করা হয়।

বিশেষত, বোলিংজার ব্যান্ড দুটি পরামিতির সাথে গণনা করা হয় - দৈর্ঘ্য এবং মাল্ট। দৈর্ঘ্য মধ্য রেখার সময়কাল নির্ধারণ করে এবং মাল্ট ব্যান্ডের প্রস্থ নির্ধারণ করে। enterLong এবং enterShort ব্রেকআউট টাইমিং বিচার করে। exitLong এবং exitShort স্টপ লস গণনা করে এবং প্রবেশের মূল্য এবং লক্ষ্য শতাংশের ভিত্তিতে মুনাফা মূল্য নেয়।

সুবিধা

এই কৌশলটি গড় এবং গতিতে পুনর্বিবেচনাকে একত্রিত করে, যা এটিকে প্রাথমিকভাবে প্রধান প্রবণতাগুলি ক্যাপচার করতে সক্ষম করে। কেবলমাত্র চলমান গড়ের ট্র্যাকিংয়ের তুলনায়, বোলিংজার ব্যান্ডের প্রস্থের উপর ভিত্তি করে যুক্ত গতির বিচার কিছু মিথ্যা ব্রেকআউট ফিল্টার করতে পারে। স্টপ লস এবং লাভ গ্রহণ ম্যানুয়াল হস্তক্ষেপ ছাড়াই সরাসরি প্রবেশ মূল্যের ভিত্তিতে সেট করা হয়।

ঝুঁকি

  • Bollinger Bands ফিটিং দাম, কিছু সরানো মিস হতে পারে
  • স্টপ লস সেট করা খুব বড় হলে ক্ষতির ঝুঁকি বাড়তে পারে
  • ষাঁড়বাজারে সংক্ষিপ্ত সংকেত ভাল নাও হতে পারে

সময়কাল, ব্যান্ড প্রস্থ এবং স্টপ লস রেঞ্জের মতো পরামিতিগুলিকে অপ্টিমাইজ করা যেতে পারে যাতে কৌশলটি বিভিন্ন বাজারের অবস্থার সাথে খাপ খাইয়ে নেওয়া যায়।

উন্নতকরণ

  • কম ভলিউমের মিথ্যা ব্রেকআউট এড়াতে ট্রেডিং ভলিউম বা অস্থিরতা যোগ করুন
  • সময়কাল, প্রস্থ সহগ এবং স্টপ লস শতাংশ অপ্টিমাইজ করার জন্য প্যারাম গ্রিড অনুসন্ধান
  • শুধুমাত্র বাজার ব্যবস্থার উপর ভিত্তি করে দীর্ঘ বা সংক্ষিপ্ত যান
  • প্রবণতা দিক নির্ধারণের জন্য মেশিন লার্নিং মডেল যোগ করুন

সিদ্ধান্ত

এই কৌশলটি বোলিংজার ব্যান্ড রিভার্সন এবং গতির শক্তিকে একত্রিত করে, যা এটিকে কিছু প্রবণতা প্রাথমিকভাবে ক্যাপচার করতে সক্ষম করে। প্যারামিটার টিউনিংয়ের মাধ্যমে এটি বিভিন্ন বাজারের পর্যায়ে অভিযোজিত হতে পারে। সরাসরি স্টপ লস / লাভের গণনা ম্যানুয়াল হস্তক্ষেপ হ্রাস করে। আরও সহায়ক সূচক অন্তর্ভুক্ত করে এখনও উন্নতির সুযোগ রয়েছে। এগুলি আরও গবেষণা এবং অপ্টিমাইজেশনে ধীরে ধীরে উন্নত করা হবে।


/*backtest
start: 2023-11-13 00:00:00
end: 2023-11-20 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("BURATINO", overlay=true)

// Входные параметры
length = input(20, minval=1, title="Length")
mult = input(2.0, minval=0.1, maxval=5, title="Multiplier")
target_percent = input(0.5, minval=0.1, title="Target Percent")
stop_loss_percent = input(95, minval=0.1, title="Stop Loss Percent")

// Расчет полос Боллинджера
basis = sma(close, length)
dev = mult * stdev(close, length)
upper = basis + dev
lower = basis - dev

// Переворот снизу вверх через среднюю линию Боллинджера для открытия лонга
enterLong = cross(close, basis) and close[1] < basis[1]

// Переворот сверху вниз через среднюю линию Боллинджера для открытия шорта
enterShort = cross(basis, close) and close[1] > basis[1]

// Закрытие лонга после роста цены на указанный процент или падения на указанный процент
exitLong = close >= strategy.position_avg_price * (1 + (target_percent / 100)) or close <= strategy.position_avg_price * (1 - (stop_loss_percent / 100))

// Закрытие шорта после падения цены на указанный процент или роста на указанный процент
exitShort = close <= strategy.position_avg_price * (1 - (target_percent / 100)) or close >= strategy.position_avg_price * (1 + (stop_loss_percent / 100))

// Управление позициями и ограничениями на открытие противоположных позиций
strategy.entry("Long", strategy.long, when = enterLong and strategy.position_size == 0)
strategy.entry("Short", strategy.short, when = enterShort and strategy.position_size == 0)

strategy.close("Long", when = exitLong)
strategy.close("Short", when = exitShort)

// Визуализация полос Боллинджера
plot(basis, color=color.blue, title="Basis")
plot(upper, color=color.red, title="Upper")
plot(lower, color=color.green, title="Lower")

আরো