আলফা ট্রেন্ড অনুসরণ করে স্টপ লস কৌশল


সৃষ্টির তারিখ: 2023-11-27 15:25:35 অবশেষে সংশোধন করুন: 2023-11-27 15:25:35
অনুলিপি: 0 ক্লিকের সংখ্যা: 835
1
ফোকাস
1617
অনুসারী

আলফা ট্রেন্ড অনুসরণ করে স্টপ লস কৌশল

ওভারভিউ

আলফা ট্রেন্ড ট্র্যাকিং স্টপ লস কৌশলটি আলফা ট্রেন্ড কৌশলটির ভিত্তিতে ট্র্যাকিং স্টপ লস প্রক্রিয়াটি যুক্ত করে যা ঝুঁকিগুলিকে আরও কার্যকরভাবে নিয়ন্ত্রণ করতে পারে এবং সামগ্রিকভাবে রিটার্নের হার বাড়িয়ে তুলতে পারে।

কৌশল নীতি

এই কৌশলটি মূল্যের প্রবণতা নির্ধারণের জন্য প্রথমে আলফা সূচক ব্যবহার করে, যখন আলফা সূচকটি উঠে যায় তখন এটি একটি bullish সংকেত এবং যখন আলফা সূচকটি পড়ে তখন এটি একটি bearish সংকেত। এই কৌশলটি আলফা সূচকের গোল্ডেন ফর্কের উপর ভিত্তি করে ক্রয় এবং বিক্রয় সংকেত তৈরি করে।

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

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

  1. আলফা প্রবণতা মূল্যের প্রবণতা নির্ধারণের জন্য শক্তিশালী এবং সাধারণ চলমান গড়ের মতো সূচকগুলির চেয়ে ভাল কাজ করে।

  2. ট্র্যাকিং স্টপ লস ম্যানেজমেন্ট কার্যকরভাবে একক ক্ষতি নিয়ন্ত্রণ করে এবং ঝুঁকি হ্রাস করে।

  3. এই কৌশলটি ঝুঁকি নিয়ন্ত্রণের জন্য যথেষ্ট শক্তিশালী এবং এমনকি খারাপ পরিস্থিতিতেও ক্ষতি হ্রাস করতে পারে।

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

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

  1. এই কৌশলটি ট্রেডিংয়ের খরচ এবং স্লাইড পয়েন্টের ক্ষতি বাড়িয়ে দেয়।

  2. স্টপ ট্র্যাকিং সক্ষম করার সময় স্টপ রেটগুলি যুক্তিসঙ্গতভাবে সেট করা দরকার, কারণ এটি খুব বড় বা খুব ছোট হওয়া উচিত নয়।

  3. যখন একটি সূচকের দাম তীব্রভাবে ওঠানামা করে, তখন একটি স্টপ লস ট্রিগার হওয়ার সম্ভাবনা বেশি থাকে, যার ফলে কয়েদখানা ঝুঁকি বাড়তে পারে।

  4. স্টপ লস প্যারামিটার অপ্টিমাইজ করার সময়, মানদণ্ডের বৈশিষ্ট্য, ট্রেডিং ফ্রিকোয়েন্সি এবং অন্যান্য বিষয়গুলিকে সমন্বিতভাবে বিবেচনা করা প্রয়োজন। কেবলমাত্র সর্বাধিক লাভের জন্য নয়।

উপরোক্ত ঝুঁকিগুলি আলফা সূচক প্যারামিটারগুলি সামঞ্জস্য করা, ডায়নামিক স্টপ লস সেট করা, ট্রেডিং চক্রগুলি সংক্ষিপ্ত করা ইত্যাদির মাধ্যমে প্রশমিত করা যেতে পারে।

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

  1. বিভিন্ন সূচক প্যারামিটার পরীক্ষা করে দেখা যায় যে, কোনটি আলফা সূচক প্যারামিটারগুলির জন্য বেশি উপযুক্ত।

  2. ATR এর গতিশীলতার উপর ভিত্তি করে স্টপ লস সেট করার চেষ্টা করুন, যাতে এটি বাজারের অস্থিরতার সাথে আরও ভালভাবে মানিয়ে নিতে পারে।

  3. অন্য সূচকগুলি যেমন MACD, KD ইত্যাদির সাথে সংযুক্ত করা যেতে পারে, কিছু ভুল সংকেতগুলি ফিল্টার করতে পারে।

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

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*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"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// author © KivancOzbilgic
// developer © KivancOzbilgic
//@version=5

strategy("AlphaTrend Strategy", shorttitle='ATst', overlay=true, format=format.price, precision=2, margin_long=100, margin_short=100)
coeff = input.float(1, 'Multiplier', step=0.1)
AP = input(14, 'Common Period')
ATR = ta.sma(ta.tr, AP)
src = input(close)
showsignalsk = input(title='Show Signals?', defval=false)
novolumedata = input(title='Change calculation (no volume data)?', defval=false)
upT = low - ATR * coeff
downT = high + ATR * coeff
AlphaTrend = 0.0
AlphaTrend := (novolumedata ? ta.rsi(src, AP) >= 50 : ta.mfi(hlc3, AP) >= 50) ? upT < nz(AlphaTrend[1]) ? nz(AlphaTrend[1]) : upT : downT > nz(AlphaTrend[1]) ? nz(AlphaTrend[1]) : downT

color1 = AlphaTrend > AlphaTrend[1] ? #00E60F : AlphaTrend < AlphaTrend[1] ? #80000B : AlphaTrend[1] > AlphaTrend[3] ? #00E60F : #80000B
k1 = plot(AlphaTrend, color=color.new(#0022FC, 0), linewidth=3)
k2 = plot(AlphaTrend[2], color=color.new(#FC0400, 0), linewidth=3)

fill(k1, k2, color=color1)

buySignalk = ta.crossover(AlphaTrend, AlphaTrend[2])
sellSignalk = ta.crossunder(AlphaTrend, AlphaTrend[2])


K1 = ta.barssince(buySignalk)
K2 = ta.barssince(sellSignalk)
O1 = ta.barssince(buySignalk[1])
O2 = ta.barssince(sellSignalk[1])

plotshape(buySignalk and showsignalsk and O1 > K2 ? AlphaTrend[2] * 0.9999 : na, title='BUY', text='BUY', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(#0022FC, 0), textcolor=color.new(color.white, 0))

plotshape(sellSignalk and showsignalsk and O2 > K1 ? AlphaTrend[2] * 1.0001 : na, title='SELL', text='SELL', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.maroon, 0), textcolor=color.new(color.white, 0))


// //ENTER SOME SETUP TRADES FOR TSL EXAMPLE
// longCondition = ta.crossover(ta.sma(close, 10), ta.sma(close, 20))
// if longCondition
//     strategy.entry('My Long Entry Id', strategy.long)

// shortCondition = ta.crossunder(ta.sma(close, 10), ta.sma(close, 20))
// if shortCondition
//     strategy.entry('My Short Entry Id', strategy.short)



longCondition = buySignalk
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = sellSignalk
if (shortCondition)
    strategy.entry("Short", strategy.short)
    

enableTrailing = input.bool(title='Enable Trailing Stop (%)',defval = true)
//TRAILING STOP CODE
trailStop = input.float(title='Trailing (%)', minval=0.0, step=0.1, defval=10) * 0.01



longStopPrice = 0.0
shortStopPrice = 0.0
longStopPrice := if strategy.position_size > 0
    stopValue = close * (1 - trailStop)
    math.max(stopValue, longStopPrice[1])
else
    0
shortStopPrice := if strategy.position_size < 0
    stopValue = close * (1 + trailStop)
    math.min(stopValue, shortStopPrice[1])
else
    999999

//PLOT TSL LINES
plot(series=strategy.position_size > 0 ? longStopPrice : na, color=color.new(color.red, 0), style=plot.style_linebr, linewidth=1, title='Long Trail Stop', offset=1, title='Long Trail Stop')
plot(series=strategy.position_size < 0 ? shortStopPrice : na, color=color.new(color.red, 0), style=plot.style_linebr, linewidth=1, title='Short Trail Stop', offset=1, title='Short Trail Stop')

    
if enableTrailing
    //EXIT TRADE @ TSL
    if strategy.position_size > 0
        strategy.exit(id='Close Long', stop=longStopPrice)
    if strategy.position_size < 0
        strategy.exit(id='Close Short', stop=shortStopPrice)