RSI গড় বিপরীত পরিমাণগত ট্রেডিং কৌশল RSI গড় ক্রসিং ভিত্তিক

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

img

সারসংক্ষেপ

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

কৌশল নীতি

  1. RSI সূচক গণনা করুন 40 বারের সাথে
  2. RSI সূচকের MA গণনা করুন, যার সময়কাল 10 বার
  3. যখন RSI তার MA এর চেয়ে কম হয় তখন একটি সহগ দ্বারা গুণিত হয় তখন ক্রয় সংকেত তৈরি করুন (1-ট্রেডিং পরিসীমা%)
  4. যখন RSI তার MA এর চেয়ে বেশি হয় তখন একটি কোয়ালিফাইয়ার দ্বারা গুণিত বিক্রয় সংকেত তৈরি করুন (1+ ট্রেডিং পরিসীমা%)
  5. ডিফল্ট ট্রেডিং রেঞ্জ দূরত্ব 5 হয়, যার অর্থ সিগন্যাল ট্রিগার করার জন্য MA এর 5% উপরে বা নীচে
  6. যখন RSI তার MA এর উপরে এবং 50 স্তরের উপরে থাকে তখন প্রস্থান নির্ধারণ করুন

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

এটি একটি সাধারণ গড় বিপরীতমুখী কৌশল, যা ট্রেডিং সংকেত নির্ধারণের জন্য আরএসআই সূচকের অতিরিক্ত ক্রয় / অতিরিক্ত বিক্রয় বৈশিষ্ট্যগুলি ব্যবহার করে। সুবিধাগুলি হ'লঃ

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

সংক্ষেপে, এটি একটি সহজ এবং কার্যকর স্বল্পমেয়াদী ট্রেডিং কৌশল।

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

কিছু ঝুঁকি আছে যা লক্ষ্য করা উচিতঃ

  1. RSI মিথ্যা সংকেত দেওয়ার সম্ভাবনা, প্যাটার্ন দেখতে হবে
  2. ভুল ট্রেডিং রেঞ্জ সেটিং ওভারট্রেডিং বা মিস সুযোগ হতে পারে
  3. উচ্চ ট্রেডিং ফ্রিকোয়েন্সি, লেনদেনের খরচ বিবেচনা করা প্রয়োজন
  4. কেবলমাত্র একক সূচকের উপর নির্ভরশীল, বাজারের অস্বাভাবিকতার জন্য প্রবণ

এই ঝুঁকিগুলি প্যারামিটার টিউনিং, ফিল্টার ইত্যাদি যোগ করে হ্রাস করা যেতে পারে।

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

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

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

মাল্টি-ইন্ডিক্টর কম্বো, স্টপ লস ম্যানেজমেন্ট, প্যারামিটার অপ্টিমাইজেশান ইত্যাদির মাধ্যমে উল্লেখযোগ্য পারফরম্যান্স লিফট অর্জন করা যেতে পারে।

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

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


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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © I11L

//@version=5
strategy("I11L - Meanreverter 4h", overlay=false, pyramiding=3, default_qty_value=10000, initial_capital=10000, default_qty_type=strategy.cash,process_orders_on_close=false, calc_on_every_tick=false)
 
frequency = input.int(10)
rsiFrequency = input.int(40)
buyZoneDistance = input.int(5)
avgDownATRSum = input.int(3)
useAbsoluteRSIBarrier = input.bool(true)
barrierLevel = 50//input.int(50)

momentumRSI = ta.rsi(close,rsiFrequency)
momentumRSI_slow = ta.sma(momentumRSI,frequency)
 
isBuy = momentumRSI < momentumRSI_slow*(1-buyZoneDistance/100) and (strategy.position_avg_price - math.sum(ta.atr(20),avgDownATRSum)*strategy.opentrades > close or strategy.opentrades == 0 ) //and (momentumRSI < barrierLevel or not(useAbsoluteRSIBarrier))
isShort = momentumRSI > momentumRSI_slow*(1+buyZoneDistance/100) and (strategy.position_avg_price - math.sum(ta.atr(20),avgDownATRSum)*strategy.opentrades > close or strategy.opentrades == 0 ) and (momentumRSI > barrierLevel or not(useAbsoluteRSIBarrier))
momentumRSISoftClose = (momentumRSI > momentumRSI_slow) and (momentumRSI > barrierLevel or not(useAbsoluteRSIBarrier))

isClose = momentumRSISoftClose

plot(momentumRSI,color=isClose ? color.red :  momentumRSI < momentumRSI_slow*(1-buyZoneDistance/100) ? color.green : color.white)
plot(momentumRSI_slow,color=color.gray)
plot(barrierLevel,color=useAbsoluteRSIBarrier ? color.white : color.rgb(0,0,0,0))
plot(momentumRSI_slow*(1-buyZoneDistance/100),color=color.gray)
plot(momentumRSI_slow*(1+buyZoneDistance/100),color=color.gray)
plot(momentumRSI_slow*(1+(buyZoneDistance*2)/100),color=color.gray)

// plot(strategy.wintrades - strategy.losstrades)

 
 
if(isBuy)
    strategy.entry("Buy",strategy.long, comment="#"+str.tostring(strategy.opentrades+1))

// if(isShort)
//     strategy.entry("Sell",strategy.short, comment="#"+str.tostring(strategy.opentrades+1))

if(isClose)
    strategy.exit("Close",limit=close)





আরো