ডাবল টেক লাভ ডাবল স্টপ লস ট্রেলিং স্টপ লস বিটকয়েন পরিমাণগত কৌশল

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

img

সারসংক্ষেপ

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

কৌশলগত যুক্তি

যখন EMA নীচে থেকে WMA অতিক্রম করে তখন দীর্ঘ প্রবেশ এবং যখন EMA উপরে থেকে WMA এর নীচে অতিক্রম করে তখন সংক্ষিপ্ত প্রবেশ।

মুনাফার দিক থেকে, দুটি লাভের লক্ষ্য রয়েছে। প্রথম লাভটি প্রবেশ মূল্যের 20 পিপসের উপরে এবং দ্বিতীয় লাভটি প্রবেশ মূল্যের 40 পিপসের উপরে সেট করা হয়।

স্টপ লস সাইডে, দুটি স্টপ লসও রয়েছে। প্রথম স্টপ লস প্রবেশ মূল্যের 20 পিপ নীচে সেট করা হয়, এবং দ্বিতীয় স্টপ লস প্রবেশ মূল্য নিজেই সেট করা হয়।

যখন প্রথম ট্যাক লাভ ট্রিগার করা হয়, পজিশনের 50% বন্ধ হয়ে যাবে, এবং দ্বিতীয় ট্যাক লাভের লক্ষ্য থেকে বৃহত্তর লাভের সন্ধানের সময় লাভের লক করার জন্য স্টপ লস প্রবেশের মূল্যে অনুসরণ করা হবে।

সুতরাং, প্রতিটি ব্যবসায়ের জন্য তিনটি সম্ভাব্য ফলাফল থাকতে পারেঃ

  1. দাম প্রথমে স্টপ লসকে আঘাত করে, ২% মূলধন হারায়।
  2. দামের হিট প্রথমে লাভ নেয় ১% লাভের জন্য, তারপর দ্বিতীয় স্টপ লস হিট করে, ১% লাভের সাথে শেষ হয়।
  3. দাম প্রথম হিট 1% মুনাফা জন্য মুনাফা প্রথম নিতে, চালিয়ে যান এবং দ্বিতীয় হিট মুনাফা নিতে, 3% মুনাফা সঙ্গে শেষ।

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

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

আরেকটি সুবিধা হল যে একটি একক বাণিজ্যকে তিনটি সম্ভাব্য ফলাফলের মধ্যে বিভক্ত করে, এটি সর্বাধিক ক্ষতির সম্ভাবনা হ্রাস করে, সামগ্রিক রিটার্নগুলিকে আরও ধারাবাহিক করে তোলে। সাধারণ কৌশলগুলির কেবল দুটি ফলাফল রয়েছে - হয় 2% স্টপ লস হিট করুন বা 2% এর বেশি জয় করুন। এই কৌশলটির তিনটি ফলাফল রয়েছে - হারান 2%, জয় 1% এবং জয় 3%, যা লেজ ঝুঁকিগুলিও আরও ভালভাবে নিয়ন্ত্রণ করে।

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

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

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

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

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

  1. সর্বোত্তম পরামিতি খুঁজে পেতে বিভিন্ন পরামিতি সমন্বয় পরীক্ষা করুন, যেমন 15 পিপ পরীক্ষা, 25 পিপ লাভ / স্টপ লস দূরত্ব গ্রহণ করুন।

  2. এন্ট্রি সিগন্যালের জন্য অন্যান্য প্রযুক্তিগত সূচক সংমিশ্রণ চেষ্টা করুন, যেমন KDJ, MACD ক্রসওভার।

  3. প্রথমবারের মতো মুনাফা নেওয়ার সময় বন্ধ হওয়া পজিশনের শতাংশকে অনুকূল করুন, যেমন 50% অনুকূল নাও হতে পারে, 30% বা 70% সম্ভাব্যভাবে আরও ভাল পারফর্ম করতে পারে।

  4. মুনাফা লকিং ভারসাম্য বজায় রাখতে এবং দামগুলিকে যথেষ্ট স্থান দেওয়ার জন্য স্টপ লস গতির জন্য বিভিন্ন সেটিংস পরীক্ষা করুন।

সিদ্ধান্ত

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


/*backtest
start: 2024-01-11 00:00:00
end: 2024-01-18 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("SL1 Pips after TP1 (MA)", commission_type=strategy.commission.cash_per_order, overlay=true)

// Strategy
Buy  = input(true)
Sell = input(true)

// Date Range
start_year    = input(title='Start year'   ,defval=2020)
start_month   = input(title='Start month'  ,defval=1)
start_day     = input(title='Start day'    ,defval=1)
start_hour    = input(title='Start hour'   ,defval=0)
start_minute  = input(title='Start minute' ,defval=0)
end_time      = input(title='set end time?',defval=false)
end_year      = input(title='end year'     ,defval=2019)
end_month     = input(title='end month'    ,defval=12)
end_day       = input(title='end day'      ,defval=31)
end_hour      = input(title='end hour'     ,defval=23)
end_minute    = input(title='end minute'   ,defval=59)

// MA
ema_period = input(title='EMA period',defval=10)
wma_period = input(title='WMA period',defval=20)
ema        = ema(close,ema_period)
wma        = wma(close,wma_period)

// Entry Condition
buy =
 crossover(ema,wma) and
 nz(strategy.position_size) == 0 and Buy
 
sell =
 crossunder(ema,wma) and
 nz(strategy.position_size) == 0 and Sell

// Pips
pip = input(20)*10*syminfo.mintick

// Trading parameters //
var bool  LS  = na
var bool  SS  = na
var float EP  = na
var float TVL = na
var float TVS = na
var float TSL = na
var float TSS = na
var float TP1 = na
var float TP2 = na
var float SL1 = na
var float SL2 = na

if buy or sell and strategy.position_size == 0
    EP  := close
    SL1 := EP - pip     * (sell?-1:1)
    SL2 := EP - pip     * (sell?-1:1)
    TP1 := EP + pip     * (sell?-1:1)
    TP2 := EP + pip * 2 * (sell?-1:1) 
   
// current trade direction    
LS := buy  or strategy.position_size > 0
SS := sell or strategy.position_size < 0

// adjust trade parameters and trailing stop calculations
TVL := max(TP1,open) - pip[1]
TVS := min(TP1,open) + pip[1]
TSL := open[1] > TSL[1] ? max(TVL,TSL[1]):TVL 
TSS := open[1] < TSS[1] ? min(TVS,TSS[1]):TVS

if LS and high > TP1
    if open <= TP1
        SL2:=min(EP,TSL)
    
if SS and low < TP1
    if open >= TP1
        SL2:=max(EP,TSS)

// Closing conditions
close_long  = LS and open < SL2
close_short = SS and open > SL2

// Buy
strategy.entry("buy"  , strategy.long, when=buy and not SS)
strategy.exit ("exit1", from_entry="buy", stop=SL1, limit=TP1, qty_percent=1)
strategy.exit ("exit2", from_entry="buy", stop=SL2, limit=TP2)

// Sell
strategy.entry("sell" , strategy.short, when=sell and not LS)
strategy.exit ("exit3", from_entry="sell", stop=SL1, limit=TP1, qty_percent=1)
strategy.exit ("exit4", from_entry="sell", stop=SL2, limit=TP2)

// Plots
a=plot(strategy.position_size >  0 ? SL1 : na, color=#dc143c, style=plot.style_linebr)
b=plot(strategy.position_size <  0 ? SL1 : na, color=#dc143c, style=plot.style_linebr) 
c=plot(strategy.position_size >  0 ? TP1 : na, color=#00ced1, style=plot.style_linebr) 
d=plot(strategy.position_size <  0 ? TP1 : na, color=#00ced1, style=plot.style_linebr) 
e=plot(strategy.position_size >  0 ? TP2 : na, color=#00ced1, style=plot.style_linebr) 
f=plot(strategy.position_size <  0 ? TP2 : na, color=#00ced1, style=plot.style_linebr) 
g=plot(strategy.position_size >= 0 ? na  : EP, color=#ffffff, style=plot.style_linebr) 
h=plot(strategy.position_size <= 0 ? na  : EP, color=#ffffff, style=plot.style_linebr) 

plot(ema,title="ema",color=#fff176)
plot(wma,title="wma",color=#00ced1)


আরো