মুভিং এভারেজ ট্রেডিং স্ট্র্যাটেজি অনুসরণ করে প্রবণতা

লেখক:চাওঝাং, তারিখঃ 2024-01-05 13:48:07
ট্যাগঃ

img

সারসংক্ষেপ

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

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

কৌশলটি বাজারের প্রবণতা নির্ধারণের জন্য বিভিন্ন পরামিতি সহ সর্বোচ্চ এবং সর্বনিম্ন মূল্যের সহজ চলমান গড় ব্যবহার করে। বিশেষত এটি চলমান গড়ের ট্র্যাকিং সিস্টেমের দুটি সেট তৈরি করেঃ

  1. এইচ 1 এবং এল 1 সিস্টেম আপসাইড থেকে প্রবণতা ট্র্যাক করে। এইচ 1 হ'ল সর্বোচ্চ দামের সহজ চলমান গড়, যা প্রবণতার উপরের ব্যান্ড হিসাবে কাজ করে; এল 1 এইচ 1 বিয়োগ করে এটিআর মান দ্বারা নির্মিত হয়, যা নীচের ব্যান্ড হিসাবে কাজ করে। যখন দাম এইচ 1 এর উপরে ভেঙে যায় তখন একটি দীর্ঘ সংকেত উত্পন্ন হয় এবং যখন দাম এল 1 এর নীচে পড়ে তখন একটি বন্ধ সংকেত উত্পন্ন হয়।

  2. এইচ 2 এবং এল 2 সিস্টেম নিম্নমুখী থেকে প্রবণতা ট্র্যাক করে। এইচ 2 হ'ল সর্বনিম্ন দামের সহজ চলমান গড়, যা নীচের ব্যান্ড হিসাবে কাজ করে; এল 2 এইচ 2 প্লাস এটিআর মান দ্বারা নির্মিত হয়, যা উপরের ব্যান্ড হিসাবে কাজ করে। যখন দাম এইচ 2 এর নীচে ভাঙে তখন একটি সংক্ষিপ্ত সংকেত উত্পন্ন হয় এবং যখন দাম এল 2 এর উপরে উঠে যায় তখন একটি বন্ধ সংকেত উত্পন্ন হয়।

ডুয়াল-ব্যান্ড সিস্টেমগুলি প্রবণতা টার্নিং পয়েন্টগুলি আরও সঠিকভাবে সনাক্ত করতে পারে এবং কিছু গোলমালযুক্ত ট্রেডগুলি ফিল্টার করতে পারে। এদিকে, এটিআর মানটি প্রতি ট্রেডের ঝুঁকি-পুরষ্কার অনুপাত নিয়ন্ত্রণ করতে স্টপ লস সেট করতে এবং লাভের স্তর নিতে ব্যবহৃত হয়।

সুবিধা বিশ্লেষণ

এই কৌশলটির প্রধান সুবিধাগুলির মধ্যে রয়েছেঃ

  1. ডুয়াল-ব্যান্ড সিস্টেম গোলমাল ফিল্টার করে এবং বাঁক পয়েন্টগুলি আরও সঠিকভাবে চিহ্নিত করে।
  2. এটিআর গতিশীলভাবে অস্থিরতা ট্র্যাক করে, ট্রেড প্রতি কার্যকর স্টপ লস নিয়ন্ত্রণ সক্ষম করে।
  3. যুক্তিটি সহজ এবং সহজেই বোঝা যায়, যা শিক্ষানবিশদের জন্য উপযুক্ত।
  4. বিভিন্ন বাজারের পরিবেশের সাথে মানিয়ে নিতে পরামিতিগুলি নমনীয়ভাবে সামঞ্জস্য করা যেতে পারে।

ঝুঁকি বিশ্লেষণ

এই কৌশলটির সাথে কিছু ঝুঁকিও জড়িতঃ

  1. ব্যাণ্ড থেকে ব্রেকআউট সংকেত আসতে পারে, প্রারম্ভিক ট্রেন্ড পর্যায়ে সুযোগ হারাতে পারে।
  2. চলমান গড়ের ট্র্যাকিং কার্ভ ট্রেন্ড ধরার ক্ষেত্রে দুর্বল ক্ষমতা রাখে।
  3. ট্রেডিং খরচ বিবেচনা করা হয় না. তারা উচ্চ ফ্রিকোয়েন্সি ট্রেডিং সঙ্গে উচ্চ হতে পারে.

সমাধান:

  1. আরও সংবেদনশীল সংকেতগুলির জন্য চলমান গড় সময়ের সংক্ষিপ্তকরণ।
  2. ট্রেন্ডের ধরন নির্ধারণের জন্য ম্যাকডি-র মতো অন্যান্য সূচক অন্তর্ভুক্ত করুন, ব্যাপ্তি অঞ্চলে অতিরিক্ত ট্রেডিং এড়ানো।
  3. কম ট্রেডিং ফ্রিকোয়েন্সিতে পজিশন সাইজিং সামঞ্জস্য করুন।

অপ্টিমাইজেশান নির্দেশাবলী

কৌশলটি নিম্নলিখিত দিক থেকে অপ্টিমাইজ করা যেতে পারেঃ

  1. পরিবর্তিত বাজারের সাথে মানিয়ে নিতে মেশিন লার্নিং অ্যালগরিদম ব্যবহার করুন।
  2. মিথ্যা ব্রেকআউট এড়াতে ট্রেডিং ভলিউম অন্তর্ভুক্ত করুন।
  3. ট্রেন্ডের শক্তির সাথে অবস্থানের আকারকে সংযুক্ত করার জন্য মাইক্রো পজিশন সাইজিং নিয়ম যুক্ত করুন।
  4. ট্রেলিং স্টপ ইত্যাদির সাথে স্টপ লস মেকানিজমকে অপ্টিমাইজ করুন।

সিদ্ধান্ত

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


/*backtest
start: 2023-12-05 00:00:00
end: 2024-01-04 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("I Like Winners And Love Loosers!", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

highest_length = input(200, type=input.integer, minval=1, title="Highest Length")
highest_average = input(10, type=input.integer, minval=1, title="Highest Average Length")

lowest_length = input(200, type=input.integer, minval=1, title="Lowest Length")
lowest_average = input(10, type=input.integer, minval=1, title="Lowest Average Length")

atr_length = input(14, type=input.integer, minval=1, title="ATR Length")
atr_multiplier = input(2, type=input.integer, minval=1, title="ATR Multiplier")
a = atr(atr_length) * atr_multiplier

h1 = sma(highest(high, highest_length), highest_average)
l1 = h1 - a

h2 = sma(lowest(low, lowest_length), lowest_average)
l2 = h2 + a

buy1_signal = crossover(close, h1)
sell1_signal = crossunder(close, l1)
strategy.entry("Buy", strategy.long, when=buy1_signal)
strategy.close("Buy", when=sell1_signal)

buy2_signal = crossunder(close, h2)
sell2_signal = crossover(close, l2)
strategy.entry("Sell", strategy.short, when=buy2_signal)
strategy.close("Sell", when=sell2_signal)

y1 = plot(h1, title="H1", color=color.green, transp=50, linewidth=2)
y2 = plot(l1, title="L1", color=color.red, transp=50, linewidth=2)
y3 = plot(h2, title="H2", color=color.green, transp=50, linewidth=2)
y4 = plot(l2, title="L2", color=color.red, transp=50, linewidth=2)

fill(y1,y2,color=color.green)
fill(y3,y4,color=color.red)


আরো