দ্বি-মুখী বিপরীত গতিবেগ সূচক ট্রেডিং কৌশল


সৃষ্টির তারিখ: 2023-12-25 12:02:57 অবশেষে সংশোধন করুন: 2023-12-25 12:02:57
অনুলিপি: 0 ক্লিকের সংখ্যা: 351

দ্বি-মুখী বিপরীত গতিবেগ সূচক ট্রেডিং কৌশল

ওভারভিউ

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

কৌশল নীতি

এই কৌশলটির কেন্দ্রীয় সূচক হল স্টোক্যাস্টিক মোমেন্টাম ইনডেক্স (এসএমআই) । এসএমআই এর গণনা সূত্রটি নিম্নরূপঃ

\[SMI = \frac{Close-(HH+LL)/2}{AVGDIFF/2}*100\]

এর মধ্যে, এইচএইচ হ’ল গত এন দিনের সর্বোচ্চ মূল্য, এলএল হ’ল গত এন দিনের সর্বনিম্ন মূল্য, এন প্যারামিটার a দ্বারা নির্ধারিত; AVGDIFF হল এইচএইচ-এলএল এর এম দিনের চলমান গড়, এম প্যারামিটার b দ্বারা নির্ধারিত।

এসএমআই সূচকটি মূল্যের বিপরীতমুখী বৈশিষ্ট্যকে প্রতিফলিত করে। যখন শেয়ারের দাম সাম্প্রতিক এন দিনের সর্বোচ্চ পয়েন্টের কাছাকাছি থাকে, তখন এসএমআই 100 এর কাছাকাছি থাকে, যা শেয়ারের ওভারবয়কে নির্দেশ করে; যখন সাম্প্রতিক এন দিনের সর্বনিম্ন পয়েন্টের কাছাকাছি থাকে, তখন এসএমআই 100 এর কাছাকাছি থাকে, যা শেয়ারের ওভারসেলকে নির্দেশ করে। এসএমআই 100 স্তর থেকে বিপরীতমুখী পতন বা 100 স্তর থেকে বিপরীতমুখী উত্থান হলে, এটি একটি ক্রয় / বিক্রয় সংকেত দেয়।

এই কৌশলটি ট্রেডিং সিগন্যাল লাইনের জন্য এসএমআই এর এম-দিনের মুভিং এভারেজ এসএমএ ব্যবহার করে। এসএমআই যখন ওভারবয়েজ এলাকা থেকে নীচে নেমে এসএমএ-তে নেমে আসে তখন একটি ক্রয় সংকেত উত্পন্ন হয়; যখন এসএমআই ওভারবয়েজ এলাকা থেকে উপরে উঠে এসএমএ-তে নেমে আসে তখন একটি বিক্রয় সংকেত উত্পন্ন হয়।

একই সময়ে, কৌশলটি K-লাইন এন্ট্রিটি ভেঙে ফেলার জন্য স্টপ লস সেট করে।

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

এই কৌশলটির সুবিধাগুলো হলঃ

  1. প্রবণতা বিপরীত পয়েন্টে ট্রেডিং সিগন্যাল তৈরি করতে এবং বিপরীত সুযোগ ধরতে মূল্য বিপরীত নীতি ব্যবহার করে।

  2. এসএমআই সূচক সর্বোচ্চ মূল্য, সর্বনিম্ন মূল্য এবং সমাপ্তির মূল্য একত্রিত করে, ওভারবয় ওভারসোলের সামগ্রিক বিচার করে, সংকেতটি আরও নির্ভরযোগ্য।

  3. K-লাইন এন্ট্রি ব্রেকআপের সাথে মিলিত হয়ে স্টপ লস সেট করুন, সময়মতো স্টপ লস করুন Exiting the position, কার্যকরভাবে ঝুঁকি নিয়ন্ত্রণ করুন।

  4. কম কৌশলগত প্যারামিটার, সহজেই বাস্তবায়ন এবং অপ্টিমাইজ করা যায়।

কৌশলগত ঝুঁকি

এই কৌশলটির কিছু ঝুঁকিও রয়েছেঃ

  1. বিপরীতমুখী ট্রেডিংয়ের ক্ষেত্রে, বিপরীতমুখী ট্রেডিংয়ের সাফল্যের সময় নির্ধারণ করা কঠিন, কারণ এটি বেশ কয়েকটি ক্ষতির পরে ট্রেন্ড বিপরীত হতে পারে।

  2. ভুল সিদ্ধান্তের ফলে ক্ষতির মাত্রা বাড়তে পারে।

  3. এন্ট্রি ব্রেকডাউন সম্ভবত খুব সংবেদনশীল, যার ফলে কয়েদখানা হওয়ার সম্ভাবনা বেশি।

সমাধানঃ

  1. এসএমআই প্যারামিটার অপ্টিমাইজ করুন, বিপরীত ট্রেডিং ফ্রিকোয়েন্সি সামঞ্জস্য করুন।

  2. অন্য সূচকগুলির সাথে মিলিতভাবে, এটি একটি বিপরীতমুখী সময় নির্ধারণ করে।

  3. এন্ট্রি আকারের ক্ষতি-থামানোর পরামিতিগুলিকে সংবেদনশীলতা থেকে রক্ষা করার জন্য সামঞ্জস্য করুন।

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

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

  1. এসএমআই এর প্যারামিটার a এবং b অনুকূলিতকরণ, বিপরীত ক্যাপচারের সংবেদনশীলতা সমন্বয় করা।

  2. অন্যান্য সূচকগুলি যুক্ত করুন যাতে আপনি মূল প্রবণতার দিকটি মিস করবেন না। যেমন গড় লাইন, অস্থিরতা সূচক ইত্যাদি।

  3. স্টপ-আপ পদ্ধতি বাড়ানো, যাতে স্টপ-আপ খুব সংবেদনশীল বা অলস না হয়। ট্র্যাকিং স্টপ, কার্ভ স্টপ ইত্যাদি বিবেচনা করা যেতে পারে।

  4. মেশিন লার্নিং মডেলের সাথে মিলিতভাবে, বিপরীতমুখী সাফল্যের সম্ভাবনা নির্ণয় করা এবং বিপরীতমুখী ব্যর্থতার সম্ভাবনা এড়ানো।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2023-11-01 00:00:00
end: 2023-11-30 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=2
strategy(title = "Noro's Stochastic Strategy v1.0", shorttitle = "Stochastic str 1.0", overlay = false, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//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 = "Capital, %")
a = input(5, "Percent K Length")
b = input(3, "Percent D Length")
limit = input(50, defval = 50, minval = 1, maxval = 100, title = "SMI Limit")
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")

//Stochastic Momentum Index
ll = lowest (low, a)
hh = highest (high, a)
diff = hh - ll
rdiff = close - (hh+ll)/2
avgrel = ema(ema(rdiff,b),b)
avgdiff = ema(ema(diff,b),b)
SMI = avgdiff != 0 ? (avgrel/(avgdiff/2)*100) : 0
SMIsignal = ema(SMI,b)

//Lines
plot(SMI, color = blue, linewidth = 3, title = "Stochastic Momentum Index")
plot(SMIsignal, color = red, linewidth = 3, title = "SMI Signal Line")
plot(limit, color = black, title = "Over Bought")
plot(-1 * limit, color = black, title = "Over Sold")
plot(0, color = blue, title = "Zero Line")

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

//Signals
up = SMIsignal < -1 * limit and close < open
dn = SMIsignal > limit and close > open
exit = ((strategy.position_size > 0 and close > open) or (strategy.position_size < 0 and close < open)) and body > abody / 2

//Trading
lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 : lot[1]

if up
    if strategy.position_size < 0
        strategy.close_all()
        
    strategy.entry("Bottom", strategy.long, needlong == false ? 0 : lot)

if dn
    if strategy.position_size > 0
        strategy.close_all()
        
    strategy.entry("Top", strategy.short, needshort == false ? 0 : lot)
    
if  exit
    strategy.close_all()