রিসোর্স লোড হচ্ছে... লোডিং...

ক্রিপ্টোকারেন্সির জন্য দ্রুত আরএসআই ফাঁক ট্রেডিং কৌশল

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

img

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

নীতিমালা: কৌশলটি দুটি প্রধান কৌশল ব্যবহার করেঃ দ্রুত RSI সূচক এবং ফাঁক প্যাটার্ন।

প্রথমত, এটি কেবল 7 টি মোমবাতিগুলির উপর ভিত্তি করে একটি দ্রুত আরএসআই সূচক গণনা করে। এটি ওভারবয়ড / ওভারসোল্ড শর্তগুলি দ্রুত সনাক্ত করতে আরএসআইকে আরও সংবেদনশীল করে তোলে। আরএসআইয়ের উপরের সীমা 70 এবং নিম্ন সীমা 30 এ সেট করা হয়। 70 এর উপরে ওভারবয়ড হিসাবে বিবেচিত হয় যখন 30 এর নীচে ওভারসোল্ড হয়।

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

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

এছাড়াও, কৌশলটি মিথ্যা সংকেত এড়াতে এসএমএ এবং মিনি / ম্যাক্স সূচক সহ অন্যান্য ফিল্টারগুলি ব্যবহার করে। কেবলমাত্র ফিল্টারগুলি পাস করার সময় প্রকৃত ট্রেডিং সংকেতগুলি ট্রিগার হবে।

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

ঝুঁকি:
কৌশলটির প্রধান ঝুঁকিগুলির মধ্যে রয়েছেঃ

  1. দ্রুত আরএসআই খুব সংবেদনশীল হতে পারে, যা অত্যধিক মিথ্যা সংকেত সৃষ্টি করে।

  2. এই ব্যবধানগুলি প্রকৃত বিপরীতমুখী পরিবর্তে স্বাভাবিক মূল্যের পরিবর্তন হতে পারে।

  3. নিম্ন অস্থিরতার সময়কালে, পজিশনগুলি দীর্ঘ সময়ের জন্য নিষ্ক্রিয় রাখা যেতে পারে।

  4. ন্যূনতম/সর্বোচ্চ সময়ের মতো অনুপযুক্ত পরামিতি সেটিংগুলি সূক্ষ্ম সংকেত এবং কম দক্ষতার দিকে পরিচালিত করতে পারে।

এজন্য নিম্নলিখিত পদ্ধতিগুলি উপরের ঝুঁকিগুলি হ্রাস করতে সহায়তা করতে পারেঃ

  1. দ্রুত আরএসআই পরামিতিগুলি সামঞ্জস্য করুন এবং আরএসআই সময়কাল বাড়ান যাতে এটি কম সংবেদনশীল হয়।

  2. মুনাফা লক করার জন্য গতিশীল স্টপ লস প্রয়োগ করুন। ফাঁক স্পাইক অনুসরণ এড়িয়ে চলুন।

  3. কৌশলগত অংশগ্রহণের হার অপ্টিমাইজ করুন। কম অস্থিরতার পরিবেশে অংশগ্রহণ সীমাবদ্ধ করুন।

  4. অবিচ্ছিন্নভাবে ব্যাকটেস্ট করুন এবং দৃঢ় সেটিংস নিশ্চিত করতে প্যারামিটারগুলি অপ্টিমাইজ করুন।

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

  1. MACD, KDJ এর মতো অন্যান্য সূচকগুলি বিশ্লেষণ করুন।

  2. বাজারের অস্থিরতার উপর ভিত্তি করে অভিযোজিত স্টপ লস প্রক্রিয়া তৈরি করা।

  3. গ্যাপের পরে বিপরীতমুখী হওয়ার বিষয়টি নিশ্চিত করার জন্য OBV এর মতো ভলিউম সূচক অন্তর্ভুক্ত করুন।

  4. ভুল সংকেত হ্রাস করার জন্য সর্বোত্তম সেটিংস আবিষ্কার করতে Min/Max Period এর মতো ফিল্টার প্যারামিটারগুলি অপ্টিমাইজ করুন।

  5. বিভিন্ন ক্রিপ্টো সম্পদ জুড়ে পরামিতির অভিযোজনযোগ্যতা গবেষণা।

এই প্রচেষ্টা কৌশলটির স্থিতিশীলতা, অভিযোজনযোগ্যতা এবং নির্ভরযোগ্যতা উল্লেখযোগ্যভাবে উন্নত করতে পারে।

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


/*backtest
start: 2023-10-27 00:00:00
end: 2023-11-26 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=3
strategy(title = "Noro's Fast RSI Strategy v1.5", shorttitle = "Fast RSI str 1.5", overlay = true)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
usersi = input(true, defval = true, title = "Use Fast RSI Strategy")
usemm = input(true, defval = true, title = "Use Min/Max Strategy")
usesma = input(false, defval = false, title = "Use SMA Filter")
smaperiod = input(20, defval = 20, minval = 2, maxval = 1000, title = "SMA Filter Period")
fast = input(7, defval = 7, minval = 2, maxval = 50, title = "Fast RSI Period")
limit = input(30, defval = 30, minval = 1, maxval = 100, title = "RSI limit")
rsisrc = input(close, defval = close, title = "RSI Price")
rsibars = input(1, defval = 1, minval = 1, maxval = 20, title = "RSI Bars")
mmbars = input(1, defval = 1, minval = 1, maxval = 5, title = "Min/Max Bars")
showsma = input(false, defval = false, title = "Show SMA Filter")
showarr = input(false, defval = false, title = "Show Arrows")
fromyear = input(2018, defval = 2018, 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")

//Fast RSI
fastup = rma(max(change(rsisrc), 0), fast)
fastdown = rma(-min(change(rsisrc), 0), fast)
fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))

//Limits
bar = close > open ? 1 : close < open ? -1 : 0
uplimit = 100 - limit
dnlimit = limit

//RSI Bars
upsignal = fastrsi > uplimit ? 1 : 0
dnsignal = fastrsi < dnlimit ? 1 : 0
uprsi = sma(upsignal, rsibars) == 1
dnrsi = sma(dnsignal, rsibars) == 1

//Body
body = abs(close - open)
abody = sma(body, 10)

//MinMax Bars
min = min(close, open)
max = max(close, open)
minsignal = min < min[1] and bar == -1 and bar[1] == -1 ? 1 : 0
maxsignal = max > max[1] and bar == 1 and bar[1] == 1 ? 1 : 0
mins = sma(minsignal, mmbars) == 1
maxs = sma(maxsignal, mmbars) == 1

//SMA Filter
sma = sma(close, smaperiod)
colorsma = showsma ? blue : na
plot(sma, color = colorsma, linewidth = 3)

//Signals
up1 = bar == -1 and (strategy.position_size == 0 or close < strategy.position_avg_price) and dnrsi and body > abody / 5 and usersi
dn1 = bar == 1 and (strategy.position_size == 0 or close > strategy.position_avg_price) and uprsi and body > abody / 5 and usersi
up2 = mins and (close > sma or usesma == false) and fastrsi < 70 and usemm
dn2 = maxs and (close < sma or usesma == false) and fastrsi > 30 and usemm 
exit = ((strategy.position_size > 0 and fastrsi > dnlimit and bar == 1) or (strategy.position_size < 0 and fastrsi < uplimit and bar == -1)) and body > abody / 2

//Arrows
col = exit ? black : up1 or dn1 ? blue : up2 or dn2 ? red : na
needup = up1 or up2
needdn = dn1 or dn2
needexitup = exit and strategy.position_size < 0
needexitdn = exit and strategy.position_size > 0
plotarrow(showarr and needup ? 1 : na, colorup = blue, colordown = blue, transp = 0)
plotarrow(showarr and needdn ? -1 : na, colorup = blue, colordown = blue, transp = 0)
plotarrow(showarr and needexitup ? 1 : na, colorup = black, colordown = black, transp = 0)
plotarrow(showarr and needexitdn ? -1 : na, colorup = black, colordown = black, transp = 0)

//Trading
if up1 or up2
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))

if dn1 or dn2
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na, 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()

আরো