একাধিক RSI সূচক ট্রেডিং কৌশল


সৃষ্টির তারিখ: 2023-11-28 15:03:53 অবশেষে সংশোধন করুন: 2023-11-28 15:03:53
অনুলিপি: 1 ক্লিকের সংখ্যা: 668
1
ফোকাস
1617
অনুসারী

একাধিক RSI সূচক ট্রেডিং কৌশল

ওভারভিউ

একাধিক আরএসআই ট্রেডিং কৌশল ট্রেডিংয়ের সুযোগগুলি সনাক্ত করতে এবং ট্রেন্ড ট্র্যাকিংয়ের জন্য একাধিক আরএসআই ব্যবহার করে। কৌশলটি 1-5 টি আরএসআই সূচক ব্যবহার করে এবং সূচকের মান অনুসারে প্রবেশ এবং প্রস্থান সময় নির্ধারণ করে।

কৌশল নীতি

এই কৌশলটি ইনপুট প্যারামিটারগুলি নির্বাচন করে 1-5 টি আরএসআই সূচক ব্যবহার করে, প্রতিটি আরএসআই সূচক পৃথকভাবে প্যারামিটার পিরিয়ড নম্বর এবং সীমাবদ্ধতা কনফিগার করতে পারে। যখন কোনও আরএসআই সূচক মানটি সংশ্লিষ্ট সীমাবদ্ধতার চেয়ে কম থাকে তখন একটি ক্রয় সংকেত উত্পন্ন হয়, সংকেতের শক্তিটি সংকেতটি ট্রিগার করার আরএসআই সূচকের পিরিয়ডের সংখ্যার দ্বারা নির্ধারিত হয়, পিরিয়ডের সংখ্যাটি যত বেশি হয় সিগন্যাল তত শক্তিশালী। যখন আরএসআই সূচকটি সীমাবদ্ধতার উপরে উঠে যায় তখন একটি সমতল সংকেত উত্পন্ন হয়। কৌশলটি রঙিন ফিল্টার ব্যবহারের পাশাপাশি ট্রেডিং সময়সীমার সীমাবদ্ধতার সাথে নমনীয় হতে পারে।

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

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

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

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

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

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

সারসংক্ষেপ

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

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

//Noro
//2018
//@version=2

strategy(title = "Noro's Symphony Strategy v1.1", shorttitle = "Symphony str 1.1", overlay = false, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 20)

//Settings

//needlong = input(true, defval = true, title = "Long")
//needshort = input(true, defval = true, title = "Short")

capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %")
usersi1 = input(true, defval = true, title = "Use RSI 1")
rsiperiod1 = input(4, defval = 4, minval = 2, maxval = 100, title = "RSI 1 Period")
rsilimit1 = input(20, defval = 20, minval = 2, maxval = 50, title = "RSI 1 Limit")
usersi2 = input(true, defval = true, title = "Use RSI 2")
rsiperiod2 = input(7, defval = 7, minval = 2, maxval = 100, title = "RSI 2 Period")
rsilimit2 = input(25, defval = 25, minval = 2, maxval = 50, title = "RSI 2 Limit")
usersi3 = input(true, defval = true, title = "Use RSI 3")
rsiperiod3 = input(14, defval = 14, minval = 2, maxval = 100, title = "RSI 3 Period")
rsilimit3 = input(30, defval = 30, minval = 2, maxval = 50, title = "RSI 3 Limit")
usersi4 = input(false, defval = false, title = "Use RSI 4")
rsiperiod4 = input(21, defval = 21, minval = 2, maxval = 100, title = "RSI 4 Period")
rsilimit4 = input(35, defval = 35, minval = 2, maxval = 50, title = "RSI 4 Limit")
usersi5 = input(false, defval = false, title = "Use RSI 5")
rsiperiod5 = input(28, defval = 28, minval = 2, maxval = 100, title = "RSI 5 Period")
rsilimit5 = input(40, defval = 40, minval = 2, maxval = 50, title = "RSI 5 Limit")
cf = input(false, defval = false, title = "Use color filter")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From Day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To Day")

//RSI
rsi1 = rsi(close, rsiperiod1)
rsi2 = rsi(close, rsiperiod2)
rsi3 = rsi(close, rsiperiod3)
rsi4 = rsi(close, rsiperiod4)
rsi5 = rsi(close, rsiperiod5)

//Signals
up1 = rsi1 < rsilimit1 and usersi1  
up2 = rsi2 < rsilimit2 and usersi2
up3 = rsi3 < rsilimit3 and usersi3
up4 = rsi4 < rsilimit4 and usersi4
up5 = rsi5 < rsilimit5 and usersi5

str = up5 ? 5 : up4 ? 4 : up3 ? 3 : up2 ? 2 : up1 ? 1 : str[1]
up = up1 or up2 or up3 or up4 or up5
exit = (rsi1 > rsilimit1 and str == 1) or (rsi2 > rsilimit2 and str == 2) or (rsi3 > rsilimit3 and str == 3) or (rsi4 > rsilimit4 and str == 4) or (rsi5 > rsilimit5 and str == 5)
lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 : lot[1]

//Background
col = up ? lime : na
bgcolor(col, transp = 0)

//Trading
if up and (close < open or cf == false)
    strategy.entry("Long", strategy.long, lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
 
if time > timestamp(toyear, tomonth, today, 23, 59) or exit
    strategy.close_all()