চলমান গড় রিগ্রেশন ব্রেকআউটের উপর ভিত্তি করে ট্রেন্ড ট্র্যাকিং কৌশল


সৃষ্টির তারিখ: 2024-02-23 14:46:37 অবশেষে সংশোধন করুন: 2024-02-23 14:46:37
অনুলিপি: 0 ক্লিকের সংখ্যা: 651
1
ফোকাস
1617
অনুসারী

চলমান গড় রিগ্রেশন ব্রেকআউটের উপর ভিত্তি করে ট্রেন্ড ট্র্যাকিং কৌশল

ওভারভিউ

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

কৌশল নীতি

এই কৌশলটি প্রথমে N দিন (ডিফল্ট 50 দিন) এর জন্য একটি সরল চলমান গড় এসএমএ গণনা করে, তারপরে এসএমএর উপর ভিত্তি করে এই সময়ের দামের স্ট্যান্ডার্ড ডিভার্জেন্স StdDev গণনা করে। এসএমএকে কেন্দ্রীয় অক্ষ হিসাবে গ্রহণ করে, এবং উপরে এবং নীচে স্ট্যান্ডার্ড ডিভার্জেন্স চ্যানেলটি উপরের এবং নীচের ট্র্যাকের 2 গুণ হিসাবে তৈরি করে। যখন দামটি ট্র্যাকের উপরে চলে যায়, তখন ফাঁকা করে; যখন দামটি নীচের ট্র্যাকটি অতিক্রম করে, তখন আরও বেশি করে।

বাজারে প্রবেশের পর, কৌশলটি স্টপ লস স্টপ সেট করে। বিশেষ করে, অতিরিক্ত কাজ করার পরে, স্টপ লিনার প্রবেশের সময় বন্ধের দামের ((100 - স্টপ লস শতাংশ); খালি হওয়ার পরে, স্টপ লিনার প্রবেশের সময় বন্ধের দামের ((100 + স্টপ লস শতাংশ) ।

সামর্থ্য বিশ্লেষণ

এই কৌশলটির সুবিধাগুলো হলঃ

  1. প্রবণতা অনুসরণ করার ক্ষমতা শক্তিশালী। স্ট্যান্ডার্ড ডিফেন্স চ্যানেল ব্যবহার করে বাজারের ওঠানামা গতিশীলভাবে অনুসরণ করা যায়।
  2. রিট্র্যাকশন কন্ট্রোল ক্ষমতা শক্তিশালী। মোবাইল স্টপ লস ব্যবহার করে একক ক্ষতির কার্যকর নিয়ন্ত্রণ করা যায়।
  3. সহজেই বাস্তবায়ন করা যায় অনেক প্যারামিটার অপ্টিমাইজেশন এড়ানো যায়, খুব সহজেই বাস্তবায়ন করা যায়

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

এই কৌশলটির কিছু ঝুঁকিও রয়েছেঃ

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

ঝুঁকি মোকাবেলার জন্য নিম্নলিখিত সমাধানগুলি রয়েছেঃ

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

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

এই কৌশলটি আরও উন্নত করার সুযোগ রয়েছেঃ

১. একাধিক সময়কালের গড়রেখা ব্যবহার করে যাচাইকরণ করুন, যাতে কার্ভটি অত্যধিক সংবেদনশীল না হয়।

২. প্রবণতা এবং বিচ্ছিন্নতা যেমন MACD এর মতো অন্যান্য সূচকগুলির সাথে মিলিত।

৩। মেশিন লার্নিং অ্যালগরিদমের গতিশীল অপ্টিমাইজেশান প্যারামিটারগুলি প্রবর্তন করা।

সারসংক্ষেপ

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

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

//@version=5
strategy("Standard Deviation Bands with Buy/Sell Signals", overlay=true)

// Input for the number of standard deviations
deviationMultiplier = input.float(2.0, title="Standard Deviation Multiplier")

// Input for the length of the moving average
maLength = input.int(50, title="Moving Average Length")

// Input for the stop loss percentage
stopLossPercentage = input.float(12, title="Stop Loss Percentage")

// Calculate the moving average
sma = ta.sma(close, maLength)

// Calculate the standard deviation of the price
priceDeviation = ta.stdev(close, maLength)

// Calculate the upper and lower bands
upperBand = sma + (priceDeviation * deviationMultiplier)
lowerBand = sma - (priceDeviation * deviationMultiplier)

// Plot the bands
plot(upperBand, color=color.green, title="Upper Band")
plot(lowerBand, color=color.red, title="Lower Band")

// Plot the moving average
plot(sma, color=color.blue, title="SMA", linewidth=2)

// Buy Signal
buyCondition = ta.crossover(close, lowerBand)
sellCondition = ta.crossunder(close, upperBand)

// Calculate stop loss level
stopLossLevelBuy = close * (1 - stopLossPercentage / 100)
stopLossLevelSell = close * (1 + stopLossPercentage / 100)

// Create Buy and Sell Alerts
alertcondition(buyCondition, title="Buy Signal", message="Buy Signal - Price Crossed Below Lower Band")
alertcondition(sellCondition, title="Sell Signal", message="Sell Signal - Price Crossed Above Upper Band")

// Plot Buy and Sell Arrows on the chart
plotshape(buyCondition, style=shape.triangleup, location=location.belowbar, color=color.green, title="Buy Signal Arrow")
plotshape(sellCondition, style=shape.triangledown, location=location.abovebar, color=color.red, title="Sell Signal Arrow")

// Exit Long and Short Positions
var float stopLossBuy = na
var float stopLossSell = na

if ta.crossover(close, sma)
    stopLossBuy := stopLossLevelBuy
if ta.crossunder(close, sma)
    stopLossSell := stopLossLevelSell

strategy.entry("Buy", strategy.long, when = buyCondition)
strategy.exit("Stop Loss/Take Profit Buy", from_entry = "Buy", stop = stopLossBuy)
strategy.entry("Sell", strategy.short, when = sellCondition)
strategy.exit("Stop Loss/Take Profit Sell", from_entry = "Sell", stop = stopLossSell)