প্রবণতা অনুসরণ বিপরীত কৌশল


সৃষ্টির তারিখ: 2024-01-03 16:34:28 অবশেষে সংশোধন করুন: 2024-01-03 16:34:28
অনুলিপি: 0 ক্লিকের সংখ্যা: 654
1
ফোকাস
1621
অনুসারী

প্রবণতা অনুসরণ বিপরীত কৌশল

ওভারভিউ

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

কৌশল নীতি

এই কৌশলটি 3 দৈর্ঘ্যের উচ্চ এবং নিম্ন গতিশীল গড় হিমা এবং এলএমএ ব্যবহার করে দামের প্রবণতা অনুসরণ করে। যখন দাম হিমা অতিক্রম করে, তখন এটিকে bullish হিসাবে ব্যাখ্যা করুন; যখন দাম এলএমএ অতিক্রম করে, তখন এটিকে bearish হিসাবে ব্যাখ্যা করুন।

এই কৌশলটি সাম্প্রতিক বারস রুট K লাইনের মধ্যে সর্বোচ্চ এবং সর্বনিম্ন মূল্যের উপর ভিত্তি করে মূল্য চ্যানেলের উপরের এবং নীচের ট্র্যাকগুলিও গণনা করে। uplevel এবং dnlevel。uplevel সাম্প্রতিক বারস রুট K লাইনের মধ্যে সর্বোচ্চ মূল্যের উপর ভিত্তি করে একটি পুনর্নির্ধারণ সহগ corr যোগ করে; dnlevel সাম্প্রতিক বারস রুট K লাইনের মধ্যে সর্বনিম্ন মূল্যের উপর ভিত্তি করে একটি পুনর্নির্ধারণ সহগ corr কমিয়ে দেয়। যা মূল্যের চ্যানেলের পরিসীমা গঠন করে।

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

যখন বিপরীত সিগন্যাল আসে, তখন এই কৌশলটি অবিলম্বে বিপরীত পজিশন খুলবে এবং নতুন মূল্য প্রবণতা অনুসরণ করবে। এটি বিপরীত নীতি অনুসরণ করে।

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

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

কৌশলগত ঝুঁকি

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

অপ্টিমাইজেশান পদ্ধতিঃ

  1. অন্যান্য সূচকগুলির সাথে মিলিতভাবে অকার্যকর সংকেতগুলি ফিল্টার করুন;
  2. মুনাফার জন্য লকডাউন এবং সর্বাধিক প্রত্যাহার হ্রাস করার জন্য চলমান ক্ষতি বাড়ানো;
  3. বিভিন্ন জাত এবং সময়কালের জন্য পরামিতি পরীক্ষা এবং অপ্টিমাইজেশন।

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

এই কৌশলটি আরও উন্নত করার সুযোগ রয়েছেঃ

  1. অন্যান্য সূচক সমন্বয় filtrate কিছু অকার্যকর সংকেত ঢোকানো যেতে পারে। যেমন MACD, KD ইত্যাদি।

  2. এডাপ্টিভ স্টপ লজিক যুক্ত করা যেতে পারে, যেমন চলমান স্টপ, ব্যালেন্স স্টপ ইত্যাদি, যাতে ঝুঁকি আরও নিয়ন্ত্রণ করা যায়।

  3. বিভিন্ন প্যারামিটারের উপর কৌশলগত প্রভাব পরীক্ষা করা যায়, প্যারামিটার সমন্বয় অপ্টিমাইজ করা যায়। যেমন এমএ চক্রের দৈর্ঘ্য, রিডাউনফ্যাক্টর সংখ্যা, ইত্যাদি।

  4. এই কৌশলটি বর্তমানে ঘন্টার পর ঘন্টা ট্রেডিংয়ের জন্য ব্যবহৃত হয়। এটির জন্য অন্যান্য ফিল্টারিং নিয়ম প্রয়োজন হতে পারে।

সারসংক্ষেপ

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

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

//Noro
//2019

//@version=3
strategy(title = "Noro's 3Bars Strategy by Larry Williams", shorttitle = "3Bars", overlay = true, 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, %")
corr = input(0.0, title = "Correction, %")
bars = input(1, minval = 1)
revers = input(false, defval = false, title = "revers")
showll = input(true, defval = true, title = "Show Levels")
showos = input(true, defval = true, title = "Show Levels one side")
showcl = input(false, defval = false, title = "Show Levels continuous line")
showbg = input(false, defval = false, title = "Show Background")
showar = input(false, defval = false, title = "Show Arrows")
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")

len = input(3)

hma = sma(high, len)
lma = sma(low, len)
plot(hma)
plot(lma)

//Levels
hbar = 0
hbar := high > high[1] ? 1 : high < high[1] ? -1 : 0
lbar = 0
lbar := low > low[1] ? 1 : low < low[1] ? -1 : 0
uplevel = 0.0
dnlevel = 0.0
hh = highest(high, bars + 1)
ll = lowest(low, bars + 1)
uplevel := hbar == -1 and sma(hbar, bars)[1] == 1 ? hh + ((hh / 100) * corr) : uplevel[1]
dnlevel := lbar == 1 and sma(lbar, bars)[1] == -1 ? ll - ((ll / 100) * corr) : dnlevel[1]

//Background
size = strategy.position_size
trend = 0
trend := size > 0 ? 1 : size < 0 ? -1 : high >= uplevel ? 1 : low <= dnlevel ? -1 : trend[1]
col = showbg == false ? na : trend == 1 ? lime : trend == -1 ? red : na
bgcolor(col)

//Lines
upcol = na
upcol := showll == false ? na : uplevel != uplevel[1] and showcl == false ? na : showos and trend[1] == 1 ? na : lime
plot(uplevel, color = upcol, linewidth = 2)
dncol = na
dncol := showll == false ? na : dnlevel != dnlevel[1] and showcl == false ? na : showos and trend[1] == -1 ? na : red
plot(dnlevel, color = dncol, linewidth = 2)

//Arrows
longsignal = false
shortsignal = false
longsignal := size > size[1]
shortsignal := size < size[1]
plotarrow(longsignal and showar and needlong ? 1 : na, colorup = blue, colordown = blue, transp = 0)
plotarrow(shortsignal and showar and needshort ? -1 : na, colorup = blue, colordown = blue, transp = 0)

//Trading
lot = 0.0
lot := size != size[1] ? strategy.equity / close * capital / 100 : lot[1]
if uplevel > 0 and dnlevel > 0 and revers == false
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, stop = uplevel)
    strategy.entry("Long stop", strategy.short, 0, stop = lma)
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, stop = dnlevel)
    strategy.entry("Short stop", strategy.long, 0, stop = hma)
    
// if time > timestamp(toyear, tomonth, today, 23, 59)
//     strategy.close_all()