ম্যাকডি নিয়ন্ত্রিত ঝুঁকি ট্রেডিং কৌশল

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

img

সারসংক্ষেপ

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

নীতিমালা

কৌশলটি প্রথমে এমএসিডি লাইন এবং এমএসিডি সূচকের সংকেত লাইন গণনা করে। যখন এমএসিডি লাইন সিগন্যাল লাইনের উপরে অতিক্রম করে, তখন এটি একটি ক্রয় সংকেত হিসাবে নির্ধারিত হয়। মিথ্যা ব্রেকআউটগুলি ফিল্টার করতে, কৌশলটির জন্য বারসিনস ((ক্রসওভার ((ম্যাকড_লাইন, সিগন্যাল_লাইন)) <= 5 এর প্রয়োজন, যার অর্থ হ'ল ব্রেকআউটটি সাম্প্রতিকতম 5 বারের মধ্যে ঘটেছে। এটি উভয়ই এমএসিডি এবং সংকেত লাইনের 0 এর নীচে থাকা প্রয়োজন, যা একটি ওভারসোল্ড শর্তকে নির্দেশ করে এবং বন্ধটি ডাব্লুএমএ লাইনের উপরে থাকা উচিত, যা একটি ঊর্ধ্বমুখী প্রবণতা নির্দেশ করে। যখন উপরের শর্তগুলি পূরণ করা হয়, তখন একটি দীর্ঘ অবস্থান খোলা হয়।

প্রতিটি ব্যবসায়ের জন্য, কৌশলটি যুক্তিসঙ্গত স্টপ লস এবং লাভের স্তরগুলি গণনা করে। স্টপ লসটি সর্বশেষতম 3 বারগুলির সর্বনিম্ন স্তরে সেট করা হয়। লাভ গ্রহণটি প্রবেশের দামের সাথে স্টপ লস এবং প্রবেশের দামের মধ্যে দূরত্বের 4 গুণ সেট করা হয়।

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

প্রতিটি ব্যবসায়ের ঝুঁকি মোট মূলধনের 1% এর মধ্যে নিয়ন্ত্রিত হয়, যা কার্যকরভাবে ড্রডাউন নিয়ন্ত্রণ করতে পারে। একই সময়ে, বড় মুনাফা লক্ষ্যমাত্রা উচ্চতর রিটার্নের অনুমতি দেয়।

সুবিধা

  • ঝুঁকি নিয়ন্ত্রণের অগ্রাধিকার রয়েছে, ট্রেড প্রতি ঝুঁকি নিয়ন্ত্রণযোগ্য
  • মূলধন ব্যবহারকে সর্বাধিকতর করার জন্য পজিশন সাইজিং অপ্টিমাইজ করা হয়েছে
  • স্টপ লস কৌশল কার্যকরভাবে ড্রডাউন নিয়ন্ত্রণ করে
  • যুক্তিসঙ্গত মুনাফা গ্রহণ উচ্চ মুনাফা সম্ভাবনার অনুমতি দেয়

ঝুঁকি এবং উন্নতি

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

সম্ভাব্য উন্নতিঃ

  • প্রবণতা নির্ধারণের জন্য অন্যান্য সূচক অন্তর্ভুক্ত করুন, এমএসিডি বিলম্ব এড়ান
  • স্টপ লস এবং লাভের অ্যালগরিদম আরও নমনীয় করার জন্য অপ্টিমাইজ করুন
  • লেনদেনের খরচ কমানোর জন্য লেনদেনের ফ্রিকোয়েন্সি শিথিল করুন

সংক্ষিপ্তসার

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


/*backtest
start: 2022-10-19 00:00:00
end: 2023-10-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy( "McDonalds ", shorttitle="Ur Lovin' It", initial_capital=10000, default_qty_type=strategy.cash, currency=currency.USD )

capital_risk    = input( 1.0, "% capital risk per trade" ) / 100
r_exit          = input( 4.0, "Take Profit in 'R'" )
wma_length      = input( 150, 'WMA Bias Length' )

[macd_line, signal_line, hist ] = macd(close, 12, 26, 9)

w_line = wma( close, wma_length )

golong = barssince(crossover(macd_line, signal_line)) <= 5 and ( macd_line < 0 and signal_line < 0 ) and ( close > w_line ) and strategy.opentrades == 0

float stop = na
float tp = na

// For a stop, use a recent low 
stop := golong ? lowest(low, 3)[1] : stop[1]
range = abs(close - stop)
tp := golong ? close + (r_exit * range) : tp[1]


// This is the bit that calculates how much size to use so we only lose 1% of the `strategy.equity`
how_much_willing_to_lose = strategy.equity * capital_risk
// Spread the risk across the stop range 
position_size_in_usd = how_much_willing_to_lose / (range / close)
// Sized specified in base contract
position_size_in_contracts = position_size_in_usd / close

// Enter the position
if golong
    strategy.entry("long", strategy.long, qty=position_size_in_contracts)
    strategy.exit("long exit","long", stop=stop, limit=tp)

// experimental exit strategy
// hist_strength = hist >= 0 ? ( hist[1] < hist ? 'strong' : 'weak') : ( hist[1] < hist ? 'weak' : 'strong' )
// if hist < 0 and hist_strength == 'strong' and falling( hist, 8 )
//     strategy.close("long")


plot( strategy.equity,  color=strategy.equity > 10000 ? color.green : color.red, linewidth=2 )

আরো