নিম্ন স্ক্যানার স্মার্ট ট্র্যাকিং পদ্ধতি

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

img

সারসংক্ষেপ

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

মূলনীতি বিশ্লেষণ

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

দ্বিতীয়ত, কৌশলটি ট্রেড সিগন্যাল বিচারের জন্য হুল মুভিং এভারেজ ব্যবহার করে। এটি বিভিন্ন সময়ের সাথে দুটি হুল এমএ গণনা করে এবং যখন স্বল্প সময়ের হুল এমএ দীর্ঘ সময়ের উপরে অতিক্রম করে তখন দীর্ঘ হয় এবং যখন এটি নীচে অতিক্রম করে তখন সংক্ষিপ্ত হয়।

অবশেষে, কৌশলটি নিম্ন পয়েন্ট স্ক্যান সংকেত এবং হুল এমএ সংকেতগুলিকে একত্রিত করে এবং কেবলমাত্র যখন নিম্ন স্ক্যানারটি নিম্ন পয়েন্ট সংকেত দেয় তখন হুল এমএ সংকেতগুলি ট্রিগার করে, প্রবেশের কৌশল গঠন করে।

এইভাবে, প্রথমে বাজারের নিম্ন পয়েন্টগুলি চিহ্নিত করে এবং তারপরে প্রবণতা ট্র্যাক করে, এটি কার্যকরভাবে ভুল প্রবেশের সময় এড়াতে এবং ট্রেডিং সিস্টেমের বিজয়ী হারের উন্নতি করতে পারে।

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

নিম্ন স্ক্যানার স্মার্ট ট্র্যাকিং পদ্ধতির প্রধান সুবিধা হলঃ

  1. নিম্ন স্ক্যানার ব্যবহার করে, এটি বাজারের নিম্ন পয়েন্টগুলি সঠিকভাবে সনাক্ত করতে পারে এবং উচ্চ পয়েন্টগুলিতে কেনা এড়াতে পারে।

  2. Hull MA একটি চমৎকার ট্রেন্ড ট্র্যাকিং সূচক যা বৃহত্তর প্রবণতা ধরা দিতে পারে।

  3. নিম্ন স্ক্যানার এবং Hull MA এর সংমিশ্রণ একে অপরকে যাচাই করে এবং প্রচুর শব্দ এবং মিথ্যা সংকেত ফিল্টার করে।

  4. একটি প্রগতিশীল স্টপ লস এক্সট্র্যাক্ট মেকানিজম গ্রহণ করা মুনাফা সর্বাধিক করতে পারে এবং pullbacks এড়াতে পারে।

  5. কৌশলটি সূচক-চালিত যুক্তি ব্যবহার করে এবং ঐতিহাসিক তথ্যের সাথে ম্যানিপুলেশন করে না, যা নির্ভরযোগ্য।

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

এই কৌশলটির প্রধান ঝুঁকিগুলি হলঃ

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

  2. বাজারগুলি তীব্রভাবে বিপরীতমুখী হতে পারে, যার ফলে স্টপ লস আঘাত করতে পারে। স্টপ লস পরিসীমা যুক্তিসঙ্গতভাবে শিথিল করা যায় এবং অবস্থান আকার নিয়ন্ত্রণ করা যায়।

  3. অনুপযুক্ত প্যারামিটার সেটিংগুলি খুব বেশি বা খুব কম ট্রেডিং সংকেত তৈরি করতে পারে। সর্বোত্তম সমন্বয় খুঁজে পেতে প্যারামিটারগুলিকে বারবার অপ্টিমাইজ করা উচিত।

  4. এই কৌশলটি শুধুমাত্র স্পষ্ট প্রবণতা সহ ফরেক্স জোড়াগুলির জন্য প্রযোজ্য, যা পরিসীমা-সীমাবদ্ধ বা দোলনশীল বাজারের জন্য উপযুক্ত নয়।

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

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

  1. কম পয়েন্টগুলি আরও সঠিকভাবে সনাক্ত করতে নিম্ন স্ক্যানারের পরামিতিগুলি অপ্টিমাইজ করুন।

  2. প্রবণতা আরও সঠিকভাবে ট্র্যাক করার জন্য Hull MA এর পরামিতিগুলি অপ্টিমাইজ করুন।

  3. সিগন্যালের নির্ভরযোগ্যতা বাড়াতে MACD, KDJ এর মতো অন্যান্য সূচক ফিল্টার যুক্ত করুন।

  4. ট্রেডিং সিগন্যাল বিচারকে সহায়তা করার জন্য মেশিন লার্নিং মডেল পূর্বাভাস যুক্ত করুন।

  5. বাজারের অস্থিরতার উপর ভিত্তি করে গতিশীলভাবে সামঞ্জস্য করার জন্য স্টপ লস প্রক্রিয়াটি অনুকূল করুন।

  6. অর্থ পরিচালনার নিয়মের উপর ভিত্তি করে গতিশীলভাবে অবস্থান আকার সামঞ্জস্য করার জন্য অবস্থান আকার কৌশল অপ্টিমাইজ করুন।

সিদ্ধান্ত

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


/*backtest
start: 2023-10-24 00:00:00
end: 2023-10-25 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © theCrypster 2020

//@version=4
// strategy(title = "Low Scanner Forex strategy", overlay = false, pyramiding=1,initial_capital = 1000, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0)
strat_dir_input = input(title="Strategy Direction", defval="long", options=["long", "short", "all"])
strat_dir_value = strat_dir_input == "long" ? strategy.direction.long : strat_dir_input == "short" ? strategy.direction.short : strategy.direction.all
strategy.risk.allow_entry_in(strat_dir_value)
leng=1
p1=close[1]
min=input(1440)
len55 = timeframe.isintraday and timeframe.multiplier >= 1 ? 
   min / timeframe.multiplier * 7 : 
   timeframe.isintraday and timeframe.multiplier < 60 ? 
   60 / timeframe.multiplier * 24 * 7 : 7
//taken from https://www.tradingview.com/script/Ql1FjjfX-security-free-MTF-example-JD/
tf3 = input("W", type=input.resolution)
ti = change( time(tf3) ) != 0
T_c = fixnan( ti ? close : na )

vrsi = rsi(cum(change(T_c) * volume), leng)
pp=wma(vrsi,len55)

d=(vrsi[1]-pp[1])
min1 =input(60)
len100 = timeframe.isintraday and timeframe.multiplier >= 1 ? 
   min1 / timeframe.multiplier * 7 : 
   timeframe.isintraday and timeframe.multiplier < 60 ? 
   60 / timeframe.multiplier * 24 * 7 : 7
x=ema(d,len100)
//
zx=x/-1
col=zx > 0? color.lime : color.orange
plot(zx,color=col,linewidth=1)
//

tf10 = input("W", title = "Timeframe", type = input.resolution, options = ["1", "5", "15", "30", "60","120", "240","360","720", "D", "W"])

length = input(24, title = "Period", type = input.integer)
shift = input(1, title = "Shift", type = input.integer)

hma(_src, _length)=>
    wma((2 * wma(_src, _length / 2)) - wma(_src, _length), round(sqrt(_length)))
    
hma3(_src, _length)=>
    p = length/2
    wma(wma(close,p/3)*3 - wma(close,p/2) - wma(close,p),p)


a = security(syminfo.tickerid, tf10, hma(close, length))
b =security(syminfo.tickerid, tf10, hma3(close[1], length)[shift])
//plot(a,color=color.gray)
//plot(b,color=color.yellow)
close_price = close[0]
len = input(25)

linear_reg = linreg(close_price, len, 0)


//plot(linear_reg, color=color.blue, title="LR", linewidth=3)

buy=crossover(linear_reg, b) 
sell=crossunder(linear_reg, b) 
//
// Time period input
testStartYear = input(2016, "BACKTEST START YEAR", minval = 1980, maxval = 2222) 
testStartMonth = input(06, "BACKTEST START MONTH", minval = 1, maxval = 12)
testStartDay = input(01, "BACKTEST START DAY", minval = 1, maxval = 31)
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
testStopYear = input(2222, "BACKTEST STOP YEAR", minval=1980, maxval = 2222)
testStopMonth = input(12, "BACKTEST STOP MONTH", minval=1, maxval=12)
testStopDay = input(31, "BACKTEST STOP DAY", minval=1, maxval=31)
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)
testPeriod = time >= testPeriodStart and time <= testPeriodStop ? true : false
l = crossover(zx,0) or buy
        
if l and testPeriod
    strategy.entry("buy", strategy.long)

per(pcnt) =>
    strategy.position_size != 0 ? round(pcnt / 100 * strategy.position_avg_price / syminfo.mintick) : float(na)
stoploss=input(title=" stop loss", defval=25, minval=0.01)
los = per(stoploss)
q1=input(title=" qty_percent1", defval=25, minval=1)
q2=input(title=" qty_percent2", defval=25, minval=1)
q3=input(title=" qty_percent3", defval=25, minval=1)
tp1=input(title=" Take profit1", defval=0.5, minval=0.01)
tp2=input(title=" Take profit2", defval=1, minval=0.01)
tp3=input(title=" Take profit3", defval=1.5, minval=0.01)
tp4=input(title=" Take profit4", defval=2, minval=0.01)
strategy.exit("x1", qty_percent = q1, profit = per(tp1), loss = los)
strategy.exit("x2", qty_percent = q2, profit = per(tp2), loss = los)
strategy.exit("x3", qty_percent = q3, profit = per(tp3), loss = los)
strategy.exit("x4", profit = per(tp4), loss = los)


আরো