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

T3MA SMA EMA
সৃষ্টির তারিখ: 2024-11-28 15:17:13 অবশেষে সংশোধন করুন: 2024-11-28 15:17:13
অনুলিপি: 1 ক্লিকের সংখ্যা: 505
1
ফোকাস
1617
অনুসারী

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

ওভারভিউ

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

কৌশল নীতি

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

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

  1. একাধিক সংকেত নিশ্চিতকরণ প্রক্রিয়া ট্রেডিং সঠিকতা উন্নত করে
  2. টি-৩ গড়ের ব্যবহার ভুয়া ব্রেকআউটের প্রভাব কমিয়ে দেয়
  3. একটি নমনীয় ঝুঁকি ব্যবস্থাপনা ব্যবস্থা যা প্রবণতাকে পর্যাপ্ত স্থান প্রদান করে এবং একই সাথে মুনাফা রক্ষা করে
  4. মুনাফার ধাপে ধাপে পরিশোধের জন্য আংশিক অবস্থান বন্ধের সমর্থন
  5. প্যারামিটারগুলি সামঞ্জস্যযোগ্য, বিভিন্ন বাজার পরিস্থিতিতে অপ্টিমাইজ করা সহজ

কৌশলগত ঝুঁকি

  1. T3 গড় লাইন গণনা জটিল, গণনা বিলম্ব হতে পারে
  2. মাল্টি সিগন্যাল কনফার্মেশন কিছু ট্রেডিং সুযোগ মিস করতে পারে
  3. মোবাইল স্টপ ক্ষতি তীব্র ওঠানামার সময় অকালীনভাবে ট্রিগার হতে পারে
  4. একটি কার্যকর সংকেত তৈরি করার জন্য একটি বড় দামের অস্থিরতা প্রয়োজন
  5. ক্রমাগত মিথ্যা সংকেত হতে পারে

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

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

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Lemon Trend Strategy", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
 
// Input parameters
lookbackPeriod = input.int(14, "Lookback Period")
t3Length = input.int(200, "T3 MA Length")
t3Factor = input.float(0.7, "T3 Factor", minval=0, maxval=1)

// 移动止损参数
trailingStopPct = input.float(1.5, "移动止损百分比", minval=0.1, step=0.1)
trailingStopActivationPct = input.float(1.0, "移动止损激活百分比", minval=0.1, step=0.1)
 
// === T3 Moving Average Function ===
t3(src, length, factor) =>
    // First EMA
    e1 = ta.ema(src, length)
    // Second EMA
    e2 = ta.ema(e1, length)
    // Third EMA
    e3 = ta.ema(e2, length)
    // Fourth EMA
    e4 = ta.ema(e3, length)
    // Fifth EMA
    e5 = ta.ema(e4, length)
    // Sixth EMA
    e6 = ta.ema(e5, length)
   
    c1 = -factor * factor * factor
    c2 = 3 * factor * factor + 3 * factor * factor * factor
    c3 = -6 * factor * factor - 3 * factor - 3 * factor * factor * factor
    c4 = 1 + 3 * factor + factor * factor * factor + 3 * factor * factor
   
    t3 = c1 * e6 + c2 * e5 + c3 * e4 + c4 * e3
 
// Calculate T3 MA
t3ma = t3(close, t3Length, t3Factor)
plot(t3ma, "T3 MA", color=color.blue)
 
// === Lemon Trend Indicator ===
highLowDiff = high - low
normalizedDiff = ta.sma(highLowDiff, lookbackPeriod)
upperBand = ta.highest(high, lookbackPeriod)
lowerBand = ta.lowest(low, lookbackPeriod)
buySignal = ta.crossover(close, upperBand - normalizedDiff)
sellSignal = ta.crossunder(close, lowerBand + normalizedDiff)
 
// === TDFI Indicator ===
tdfiLength = input.int(14, "TDFI Length")
tdfi = ta.ema(close - close[1], tdfiLength)
tdfiSignal = ta.ema(tdfi, 9)
 
// Plot signals
plotshape(buySignal and tdfi > tdfiSignal and close > t3ma, "Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(sellSignal and tdfi < tdfiSignal and close < t3ma, "Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)
 
// === Strategy Logic ===
longCondition = buySignal and tdfi > tdfiSignal and close > t3ma
shortCondition = sellSignal and tdfi < tdfiSignal and close < t3ma
 
// 计算移动止损价格
var float longTrailingStop = na
var float shortTrailingStop = na

// 更新移动止损价格
if (strategy.position_size > 0)
    threshold = strategy.position_avg_price * (1 + trailingStopActivationPct / 100)
    if (high > threshold)
        stopPrice = high * (1 - trailingStopPct / 100)
        if (na(longTrailingStop) or stopPrice > longTrailingStop)
            longTrailingStop := stopPrice
    
if (strategy.position_size < 0)
    threshold = strategy.position_avg_price * (1 - trailingStopActivationPct / 100)
    if (low < threshold)
        stopPrice = low * (1 + trailingStopPct / 100)
        if (na(shortTrailingStop) or stopPrice < shortTrailingStop)
            shortTrailingStop := stopPrice

// Entry orders
if (longCondition)
    strategy.entry("Long", strategy.long)
    longTrailingStop := na
    
if (shortCondition)
    strategy.entry("Short", strategy.short)
    shortTrailingStop := na
 
// Calculate stop loss and take profit levels
longStopLoss = ta.lowest(low, lookbackPeriod)
shortStopLoss = ta.highest(high, lookbackPeriod)
 
// Exit conditions with fixed R:R
fixedRR = input.float(1.8, "Fixed Risk:Reward Ratio")
partialExitPct = input.float(50.0, "Partial Exit Percentage", minval=0, maxval=100) / 100
 
// 综合移动止损和固定止损
if (strategy.position_size > 0)
    longTakeProfit = strategy.position_avg_price + (strategy.position_avg_price - longStopLoss) * fixedRR
    stopPrice = na(longTrailingStop) ? longStopLoss : math.max(longStopLoss, longTrailingStop)
    strategy.exit("Long Exit", "Long", qty_percent=partialExitPct, stop=stopPrice, limit=longTakeProfit)
    
if (strategy.position_size < 0)
    shortTakeProfit = strategy.position_avg_price - (shortStopLoss - strategy.position_avg_price) * fixedRR
    stopPrice = na(shortTrailingStop) ? shortStopLoss : math.min(shortStopLoss, shortTrailingStop)
    strategy.exit("Short Exit", "Short", qty_percent=partialExitPct, stop=stopPrice, limit=shortTakeProfit)

// 绘制移动止损线
plot(strategy.position_size > 0 ? longTrailingStop : na, "Long Trailing Stop", color=color.red, style=plot.style_linebr)
plot(strategy.position_size < 0 ? shortTrailingStop : na, "Short Trailing Stop", color=color.red, style=plot.style_linebr)