অ্যাডাপটিভ মুভিং এভারেজ ক্রস ট্রেইলিং স্টপ লস স্ট্র্যাটেজি

SMA MA EMA ATR SL TP
সৃষ্টির তারিখ: 2024-07-29 14:27:58 অবশেষে সংশোধন করুন: 2024-07-29 14:27:58
অনুলিপি: 0 ক্লিকের সংখ্যা: 544
1
ফোকাস
1617
অনুসারী

অ্যাডাপটিভ মুভিং এভারেজ ক্রস ট্রেইলিং স্টপ লস স্ট্র্যাটেজি

ওভারভিউ

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

কৌশল নীতি

এই কৌশলটির মূল ধারণাগুলিতে নিম্নলিখিত কয়েকটি মূল উপাদান রয়েছেঃ

  1. মুভিং এভারেজ ক্রসঃ দুটি ভিন্ন পিরিয়ডের একটি সরল মুভিং এভারেজ (এসএমএ) ব্যবহার করা হয়, যথাক্রমে দ্রুত এসএমএ (ডিফল্ট 5 পিরিয়ড) এবং ধীর এসএমএ (ডিফল্ট 50 পিরিয়ড) । যখন দ্রুত এসএমএ উপরে ধীর এসএমএ অতিক্রম করে, তখন একাধিক সংকেত ট্রিগার করা হয়।

  2. পজিশন সাইজিংঃ এই কৌশলটি অ্যাকাউন্টের ব্যালেন্স এবং বর্তমান মূল্যের উপর ভিত্তি করে একটি গতিশীল পজিশন সাইজিং পদ্ধতি গ্রহণ করে। একই সাথে একটি “আস্থা” ফ্যাক্টর চালু করা হয়েছে, যা বিনিয়োগের পরিমাণকে সামঞ্জস্য করতে পারে।

  3. ট্র্যাকিং স্টপঃ শতাংশ ভিত্তিক ট্র্যাকিং স্টপ ব্যবস্থা বাস্তবায়ন। মুনাফা লক করতে এবং প্রত্যাহার সীমাবদ্ধ করার জন্য দাম বাড়ার সাথে সাথে স্টপ লেভেল উপরে চলে যায়।

  4. স্বনির্ধারিত বৈশিষ্ট্যঃ যদি “fancy_tests” বিকল্পটি চালু করা হয়, তাহলে কৌশলটি স্ট্যান্ডার্ড ডিভার্জেন্সের উপর ভিত্তি করে গতিশীল স্টপ লস শতাংশ ব্যবহার করবে, যাতে স্টপ লস স্তরটি বাজারের অস্থিরতার সাথে স্বনির্ধারিত হতে পারে।

  5. প্রস্থান লজিকঃ কৌশলটি মূলত স্টপ লস ট্র্যাকিংয়ের উপর নির্ভর করে এবং স্থির লাভের বিন্দু নির্ধারণ করে না।

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

  1. প্রবণতা অনুসরণঃ একটি চলমান গড় ক্রস ব্যবহার করে, কৌশলটি মাঝারি এবং দীর্ঘমেয়াদী প্রবণতা ধরতে সক্ষম হয়, যা শক্তিশালী প্রবণতার মধ্যে উল্লেখযোগ্য লাভের পক্ষে সহায়ক।

  2. ঝুঁকি ব্যবস্থাপনাঃ ট্র্যাকিং স্টপ লস পদ্ধতি ব্যবহার করে, আপনি নিচের দিকে ঝুঁকি নিয়ন্ত্রণ করতে পারেন এবং আপনার মুনাফা বৃদ্ধি করতে পারেন।

  3. স্বনির্ধারণযোগ্যতা: কৌশলটি বিভিন্ন বাজারের অবস্থার সাথে আরও ভালভাবে খাপ খাইয়ে নিতে পারে, কারণ এটি উদ্বায়ীতা ফ্যাক্টর অন্তর্ভুক্ত করে।

  4. তহবিল ব্যবস্থাপনাঃ ডায়নামিক পজিশন সাইজিং অ্যাকাউন্টের বৃদ্ধির সাথে সাথে লেনদেনের আকার বাড়াতে সহায়তা করে এবং অ্যাকাউন্টের সঙ্কুচিত হওয়ার সময় স্বয়ংক্রিয়ভাবে ঝুঁকি হ্রাস করে।

  5. নমনীয়তাঃ কৌশলটি একাধিক পরিবর্তনযোগ্য প্যারামিটার সরবরাহ করে, যেমন মুভিং এভারেজ, স্টপ লস শতাংশ ইত্যাদি, যা ব্যবহারকারী বিভিন্ন বাজার এবং ব্যক্তিগত ঝুঁকি পছন্দ অনুসারে অনুকূলিত করতে পারেন।

কৌশলগত ঝুঁকি

  1. ভুয়া ব্রেকিংঃ ক্রমবর্ধমান বা অস্থির বাজারে, চলমান গড়ের ভুয়া ব্রেকিং ঘন ঘন ঘটতে পারে, যার ফলে একাধিক স্টপ লস হয়।

  2. পিছিয়ে পড়াঃ মুভিং এভারেজ মূলত একটি পিছিয়ে পড়া সূচক, যা তীব্র ওঠানামা বাজারগুলিতে যথেষ্ট দ্রুত প্রতিক্রিয়া জানাতে পারে না।

  3. অতিরিক্ত লেনদেনঃ যদি প্যারামিটারগুলি ভুলভাবে সেট করা হয়, তবে এটি ঘন ঘন প্রবেশ এবং প্রস্থান হতে পারে, যার ফলে লেনদেনের ব্যয় বাড়তে পারে।

  4. প্রত্যাহারের ঝুঁকিঃ ট্র্যাকিং স্টপ লস থাকা সত্ত্বেও, দ্রুত বিপরীতমুখী বাজারে আরও বড় প্রত্যাহারের ঝুঁকি রয়েছে।

  5. একমুখী লেনদেনঃ এই কৌশলটি বর্তমানে কেবলমাত্র অতিরিক্ত লেনদেনের জন্য ব্যবহৃত হয়। এটি নিম্নমুখী প্রবণতায় সুযোগ হারাতে বা ক্ষতিগ্রস্ত হতে পারে।

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

  1. মাল্টি টাইম ফ্রেম বিশ্লেষণঃ মিথ্যা সংকেত কমানোর জন্য দীর্ঘমেয়াদী প্রবণতা বিচারক সূচক যেমন দীর্ঘমেয়াদী চলমান গড় প্রবর্তন করা।

  2. কুপিং লজিক যোগ করুনঃ কুপিং ট্রেডিং সমর্থন করার জন্য কৌশলগুলি প্রসারিত করুন, কৌশলগুলির ব্যাপকতা এবং লাভের সুযোগ বাড়ান।

  3. প্রবেশের সময়কে অনুকূলিত করুনঃ প্রবেশের সঠিকতা বাড়ানোর জন্য অন্যান্য প্রযুক্তিগত সূচক (যেমন আরএসআই, এমএসিডি ইত্যাদি) এর সাথে মিলিত ট্রেডিং সংকেতগুলি ফিল্টার করার বিষয়টি বিবেচনা করুন।

  4. গতিশীল প্যারামিটার অপ্টিমাইজেশানঃ স্বনির্ধারিত প্যারামিটার সমন্বয় ব্যবস্থা বাস্তবায়ন, যেমন বাজারের অস্থিরতার গতিশীলতার উপর ভিত্তি করে চলমান গড়ের সময়কালের সমন্বয়।

  5. মুনাফা বন্ধ করার ব্যবস্থা বাড়ানোঃ স্টপ লস ট্র্যাকিং ছাড়াও, প্রযুক্তিগত সূচক বা নির্দিষ্ট লক্ষ্যের উপর ভিত্তি করে মুনাফা বন্ধের নিয়ম যোগ করার কথা বিবেচনা করা যেতে পারে।

  6. পজিশন ম্যানেজমেন্ট উন্নত করুনঃ ক্যালি নির্দেশিকা বা অন্যান্য ঝুঁকি সমতুল্য পদ্ধতির উপর ভিত্তি করে আরও জটিল পজিশন সাইজিং কৌশল বাস্তবায়ন করুন।

  7. মৌলিক ফিল্টার যুক্ত করুনঃ শেয়ার ট্রেডিংয়ের ক্ষেত্রে, অতিরিক্ত ট্রেডিং ফিল্টার শর্ত হিসাবে মৌলিক সূচকগুলি প্রবর্তন করা বিবেচনা করা যেতে পারে।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2023-07-23 00:00:00
end: 2024-07-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/
// © chinmay.hundekari

//@version=5
//@version=5
strategy("test", overlay = true)

// Calculate two moving averages with different lengths.
SLMA = input.int(50,"SMA",minval=10,step=1)
FSMA = input.int(5,"SMA",minval=1,step=1)
fancy_tests = input.bool(true,"Enable Fancy Changes")
longLossPerc = input.float(2, title="Trailing Stop Loss (%)",
     minval=0.0, step=0.1) * 0.01
stdMult = input.float(2.0, title="Standard Deviation Multiplier",
     minval=0.0, step=0.01)

float fastMA = ta.sma(close, FSMA)
float slowMA = ta.sma(close, SLMA)
float closMA = ta.sma(close, 25)

confidence = 1.0
if (fancy_tests)
    longLossPerc := stdMult * ta.stdev(ohlc4, 20)/close
balance = strategy.initial_capital + strategy.netprofit
balanceInContracts = balance* confidence/close

// Enter a long position when `fastMA` crosses over `slowMA`.
if ta.crossover(fastMA, slowMA)
    strategy.entry("BUY", strategy.long, qty=balanceInContracts)
//longStopPrice  = strategy.position_avg_price * (1 - longLossPerc)
//Trailing Stop loss Code
longStopPrice = 0.0
percLoss = longLossPerc
longStopPrice := if strategy.position_size > 0
    //if (strategy.openprofit_percent/100.0 > longLossPerc)
    //    percLoss := math.min(strategy.openprofit_percent/200.0, longLossPerc)
    stopValue = close * (1 - percLoss)
    math.max(stopValue, longStopPrice[1])
else
    0
if strategy.position_size > 0
    strategy.exit("STP", stop=longStopPrice)
plot(strategy.position_size > 0 ? longStopPrice : na,
     color=color.red, style=plot.style_cross,
     linewidth=2, title="Long Stop Loss")
// Enter a short position when `fastMA` crosses under `slowMA`.
//if ta.crossunder(fastMA, closMA)
//    strategy.close_all("SEL")//strategy.entry("sell", strategy.short)

// Plot the moving averages.
plot(fastMA, "Fast MA", color.aqua)
plot(slowMA, "Slow MA", color.orange)
plot((confidence)*(close), "Confidence", color=color.green, linewidth=2)