OBV এবং MA ক্রস সিগন্যালের উপর ভিত্তি করে প্রবণতা অনুসরণ করা কৌশল

OBV MA SMA
সৃষ্টির তারিখ: 2024-04-29 13:48:58 অবশেষে সংশোধন করুন: 2024-04-29 13:48:58
অনুলিপি: 0 ক্লিকের সংখ্যা: 802
1
ফোকাস
1617
অনুসারী

OBV এবং MA ক্রস সিগন্যালের উপর ভিত্তি করে প্রবণতা অনুসরণ করা কৌশল

ওভারভিউ

এই কৌশলটির নাম “OBVious MA Strategy based on OBV and MA crossover signals” অর্থাৎ “OBV এবং MA ক্রস সংকেতের উপর ভিত্তি করে ট্রেড ট্র্যাকিং কৌশল”, এর মূল বিষয় হল OBV (On Balance Volume) সূচক এবং চলমান গড়ের ক্রস ব্যবহার করে ট্রেডিং সংকেত উৎপন্ন করা। OBV একটি নেতৃস্থানীয় ট্রেন্ডিং সংকেত প্রদান করতে পারে, এই কৌশলটি OBV এর মাধ্যমে চলমান গড়কে ভেঙে প্রবেশ এবং প্রস্থান করার শর্ত হিসাবে ব্যবহার করে ট্রেন্ডকে ধরতে।

কৌশল নীতি

  1. OBV সূচকের মান গণনা করুনঃ যদি বর্তমান সমাপ্তি মূল্য পূর্ববর্তী K লাইনের চেয়ে বেশি হয় তবে OBV বর্তমান লেনদেনের পরিমাণ যোগ করে, অন্যথায় লেনদেনের পরিমাণ কেটে নেওয়া হয়।
  2. OBV এর চারটি চলমান গড় গণনা করা হয়ঃ দীর্ঘ চক্রের বেশি প্রবেশের MA, দীর্ঘ চক্রের বেশি প্রস্থান MA, স্বল্প চক্রের খালি প্রবেশের MA এবং স্বল্প চক্রের খালি প্রস্থান MA
  3. ট্রেডিং সিগন্যাল তৈরি করেঃ
    • ওবিভি-তে দীর্ঘ চক্রের মাস্টার মাস্টার এবং ডাইরেকশন ফিল্টারটি খালি না হলে, মাস্টার খোলা
    • যখন OBV দীর্ঘ চক্রের অধীনে বেশি ম্যাচের এমএ করে, তখন প্লেইন বেশি পজিশন করে
    • যখন OBV-এর অধীনে স্বল্প-চক্রের খালি মাঠে প্রবেশ করা হয় এবং দিকনির্দেশ ফিল্টারটি বেশি কাজ করে না, তখন খালি খালি
    • যখন OBV উপর একটি স্বল্প-চক্র খালি আউটপুট এমএ, খালি পজিশন
  4. ট্রেড ম্যানেজমেন্টঃ যদি বিপরীত সিগন্যাল আসে, তাহলে প্রথম পজিশন খালি করে তারপর নতুন পজিশন খুলতে হবে।

কৌশলগত সুবিধা

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

কৌশলগত ঝুঁকি

  1. অন্যান্য নিশ্চিতকরণ সূচকগুলির অভাব, যা একটি মিথ্যা সংকেত তৈরি করতে পারে। অন্যান্য সূচকগুলির সাথে একত্রে ব্যবহার করার পরামর্শ দেওয়া হচ্ছে।
  2. স্টপ লস এবং পজিশন ম্যানেজমেন্টের অভাব, একক লোকসান বাড়ানোর ঝুঁকি। যুক্তিসঙ্গত স্টপ লস এবং তহবিল পরিচালনার ব্যবস্থা যুক্ত করা যেতে পারে।
  3. ভুল প্যারামিটার নির্বাচন কৌশল কর্মক্ষমতা প্রভাবিত করতে পারে। বিভিন্ন বাজার বৈশিষ্ট্য এবং সময়কাল অনুযায়ী প্যারামিটার অপ্টিমাইজেশান প্রয়োজন।

কৌশল অপ্টিমাইজেশনের দিকনির্দেশনা

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

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2023-04-23 00:00:00
end: 2024-04-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © ThousandX_Trader

//@version=5
strategy(title="OBVious MA Strategy [1000X]", overlay=false, 
         initial_capital=10000, margin_long=0.1, margin_short=0.1,
         default_qty_type=strategy.percent_of_equity, default_qty_value=100,
         slippage=1, commission_type=strategy.commission.percent, commission_value=0.1)

// Direction Input ///
tradeDirection = input.string("long", title="Direction", options=["long", "short"], group = "Direction Filter")

    ///////////////////////////////////////
   //  1000X OBV MA INDICATOR           //
  ///////////////////////////////////////

// OBV Trend Length Inputs //
long_entry_length = input(190, title="Long Entry MA Length", group = "Moving Average Settings")
long_exit_length = input(202, title="Long Exit MA Length", group = "Moving Average Settings")
short_entry_length = input(395, title="Short MA Entry Length", group = "Moving Average Settings")
short_exit_length = input(300, title="Short Exit MA Length", group = "Moving Average Settings")

// OBV Calculation
obv = ta.cum(ta.change(close) >= 0 ? volume : -volume)

// Calculate OBV Moving Averages
obv_ma_long_entry = ta.sma(obv, long_entry_length)
obv_ma_long_exit = ta.sma(obv, long_exit_length)
obv_ma_short_entry = ta.sma(obv, short_entry_length)
obv_ma_short_exit = ta.sma(obv, short_exit_length)

   ///////////////////////////////////////
  //         STRATEGY RULES            //
 ///////////////////////////////////////

longCondition = ta.crossover(obv, obv_ma_long_entry) and tradeDirection != "short" and strategy.position_size <= 0
longExitCondition = ta.crossunder(obv, obv_ma_long_exit)
shortCondition = ta.crossunder(obv, obv_ma_short_entry) and tradeDirection != "long" and strategy.position_size >= 0
shortExitCondition = ta.crossover(obv, obv_ma_short_exit)

  ///////////////////////////////////////
 //         ORDER EXECUTION           //
///////////////////////////////////////

// Close opposite trades before entering new ones
if (longCondition and strategy.position_size < 0)
    strategy.close("Short Entry")

if (shortCondition and strategy.position_size > 0)
    strategy.close("Long Entry")

// Enter new trades
if (longCondition)
    strategy.entry("Long Entry", strategy.long)

if (shortCondition)
    strategy.entry("Short Entry", strategy.short)

// Exit conditions
if (longExitCondition)
    strategy.close("Long Entry")

if (shortExitCondition)
    strategy.close("Short Entry")

  ///////////////////////////////////////
 //            PLOTTING               //
///////////////////////////////////////

// Plot OBV line with specified color
plot(obv, title="OBV", color=color.new(#2962FF, 0), linewidth=1)

// Conditionally plot Long MAs with specified colors based on Direction Filter
plot(tradeDirection == "long" ? obv_ma_long_entry : na, title="Long Entry MA", color=color.new(color.rgb(2, 130, 228), 0), linewidth=1)
plot(tradeDirection == "long" ? obv_ma_long_exit : na, title="Long Exit MA", color=color.new(color.rgb(106, 168, 209), 0), linewidth=1)

// Conditionally plot Short MAs with specified colors based on Direction Filter
plot(tradeDirection == "short" ? obv_ma_short_entry : na, title="Short Entry MA", color=color.new(color.rgb(163, 2, 227), 0), linewidth=1)
plot(tradeDirection == "short" ? obv_ma_short_exit : na, title="Short Exit MA", color=color.new(color.rgb(192, 119, 205), 0), linewidth=1)