একাধিক সূচক অনুসরণ করে গতিশীল প্রবণতা ব্যাচ লাভ-গ্রহণ ট্রেডিং কৌশল

EMA MACD RSI ATR
সৃষ্টির তারিখ: 2025-02-10 14:49:11 অবশেষে সংশোধন করুন: 2025-02-10 14:49:11
অনুলিপি: 2 ক্লিকের সংখ্যা: 378
1
ফোকাস
1617
অনুসারী

একাধিক সূচক অনুসরণ করে গতিশীল প্রবণতা ব্যাচ লাভ-গ্রহণ ট্রেডিং কৌশল

ওভারভিউ

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

কৌশল নীতি

কৌশলটির মূল লেনদেনের যুক্তি নিম্নলিখিত মূল উপাদানগুলির উপর ভিত্তি করে তৈরি করা হয়েছেঃ

  1. প্রবেশের সংকেতগুলি একাধিক প্রযুক্তিগত সূচক ফিল্টার ব্যবহার করেঃ দ্রুত ইএমএ এবং ধীর ইএমএর ক্রস, এমএসিডি গোল্ডফোর্ক / ডেডফোর্ক সংকেত এবং আরএসআই ওভারবয় ওভারসেল সূচক। মাল্টিহেড প্রবেশের জন্য দ্রুত ইএমএতে ধীর ইএমএ, এমএসিডি গোল্ডফোর্ক এবং আরএসআই 70 এর নীচে অতিক্রম করতে হবে; খালি হাতে প্রবেশের জন্য দ্রুত ইএমএতে ধীর ইএমএ, এমএসিডি ডেডফোর্ক এবং আরএসআই 30 এর নীচে অতিক্রম করতে হবে।
  2. রিস্ক কন্ট্রোল একটি নির্দিষ্ট অনুপাতের স্টপ লস ব্যবহার করে, যা খোলার দামের 5% এ সেট করা হয়।
  3. ব্যাচ স্টপ মেশিনঃ প্রথম স্টপ 8% এবং দ্বিতীয় স্টপ 12% এ অবস্থিত, বাজারের ওঠানামার সাথে সামঞ্জস্য রেখে দ্বিতীয় স্টপের অবস্থানকে গতিশীলভাবে সামঞ্জস্য করে।
  4. পজিশন ম্যানেজমেন্ট ATR গতিশীল হিসাব উপর ভিত্তি করে, একক সর্বোচ্চ ঝুঁকি 5% নিয়ন্ত্রণ করা হয়, সর্বোচ্চ পজিশন অ্যাকাউন্ট অধিকার এবং সুদ 40% অতিক্রম না।

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

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

কৌশলগত ঝুঁকি

  1. দ্রুত অস্থির বাজারে প্রায়শই স্টপ লস সমস্যা দেখা দিতে পারে। বাজারের অস্থিরতা খুব বেশি হলে প্যারামিটারগুলি সামঞ্জস্য করতে বা লেনদেন স্থগিত করতে সতর্কতা অবলম্বন করা দরকার।
  2. ক্রমাগত ক্ষতিগ্রস্ত হতে পারে, তাই ক্রমাগত ক্ষতিগ্রস্ত হওয়ার জন্য ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত ক্রমাগত
  3. একাধিক সূচক ফিল্টার করা কিছু ট্রেন্ড মিস করতে পারে এবং শক্তিশালী ট্রেন্ডিং মার্কেটে একক সূচক কৌশলটির চেয়ে কম কার্যকর হতে পারে।
  4. ব্যাচ স্টপিং ব্যবস্থা দ্রুত পাল্টা বাজারে সময়মতো প্লেইন করতে পারে না, পাল্টা সংকেত বিচার বিবেচনা করা প্রয়োজন।

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

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

সারসংক্ষেপ

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

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

//@version=6
strategy("Hang Strategy Aggressive", overlay=true, initial_capital=1000, currency=currency.USDT, default_qty_type=strategy.cash, default_qty_value=100)

// === 参数设置 ===
fastLength = input.int(5, "快速EMA长度")
slowLength = input.int(15, "慢速EMA长度")
rsiLength = input.int(7, "RSI长度")
atrPeriod = input.int(10, "ATR周期")
leverageMultiple = input.float(3.0, "杠杆倍数", minval=1.0, step=0.5)

// === 止盈止损参数 ===
stopLossPercent = input.float(5.0, "止损百分比", minval=1.0, step=0.5)
firstTakeProfitPercent = input.float(8.0, "第一止盈点百分比", minval=1.0, step=0.5)
secondTakeProfitPercent = input.float(12.0, "第二止盈点百分比", minval=1.0, step=0.5)
firstTakeProfitQtyPercent = input.float(50.0, "第一止盈仓位百分比", minval=1.0, maxval=100.0, step=5.0)

// === 技术指标 ===
fastEMA = ta.ema(close, fastLength)
slowEMA = ta.ema(close, slowLength)
superFastEMA = ta.ema(close, 3)
rsi = ta.rsi(close, rsiLength)
atr = ta.atr(atrPeriod)

// === 趋势判断 ===
[macdLine, signalLine, histLine] = ta.macd(close, 12, 26, 9)
macdCross = (macdLine > signalLine) and (macdLine[1] < signalLine[1])
macdCrossDown = (macdLine < signalLine) and (macdLine[1] > signalLine[1])

// === 交易信号 ===
longCondition = (fastEMA > slowEMA) and macdCross and (rsi < 70)
shortCondition = (fastEMA < slowEMA) and macdCrossDown and (rsi > 30)

// === 平仓信号 ===
exitLong = shortCondition or (fastEMA < slowEMA)
exitShort = longCondition or (fastEMA > slowEMA)

// === 仓位管理 ===
maxRiskPerTrade = 0.05
basePosition = strategy.equity * maxRiskPerTrade
atrAmount = atr * close
riskPosition = basePosition / atrAmount * leverageMultiple
positionSize = math.min(riskPosition, strategy.equity * 0.4 / close)

// === 交易状态变量 ===
var isLong = false
var isShort = false
var partialTpTriggered = false
var float stopPrice = na
var float firstTpPrice = na
var float secondTpPrice = na
var float firstTpQty = na

// === 交易执行 ===
// 多头入场
if (longCondition and not isLong and not isShort)
    strategy.entry("多", strategy.long, qty=positionSize)
    isLong := true
    partialTpTriggered := false

// 空头入场
if (shortCondition and not isShort and not isLong)
    strategy.entry("空", strategy.short, qty=positionSize)
    isShort := true
    partialTpTriggered := false

// === 止盈止损逻辑 ===
if (strategy.position_size > 0)  // 多仓
    stopPrice := strategy.position_avg_price * (1 - stopLossPercent/100)
    firstTpPrice := strategy.position_avg_price * (1 + firstTakeProfitPercent/100)
    // 只在未触发第一止盈时计算第二止盈价格
    if not partialTpTriggered
        secondTpPrice := strategy.position_avg_price * (1 + secondTakeProfitPercent/100)
    
    if (close[1] <= stopPrice or low <= stopPrice)
        strategy.close_all("多止损")
        isLong := false
        partialTpTriggered := false
    
    if (not partialTpTriggered and (close[1] >= firstTpPrice or high >= firstTpPrice))
        strategy.order("多第一止盈", strategy.short, qty=firstTpQty)
        partialTpTriggered := true
        // 在这里重新计算第二止盈价格
        secondTpPrice := high * (1 + 0.04)  // 基于当前最高价再上涨4%
    
    if (close[1] >= secondTpPrice or high >= secondTpPrice)
        strategy.close_all("多第二止盈")
        isLong := false
        partialTpTriggered := false

if (strategy.position_size < 0)  // 空仓
    stopPrice := strategy.position_avg_price * (1 + stopLossPercent/100)
    firstTpPrice := strategy.position_avg_price * (1 - firstTakeProfitPercent/100)
    // 只在未触发第一止盈时计算第二止盈价格
    if not partialTpTriggered
        secondTpPrice := strategy.position_avg_price * (1 - secondTakeProfitPercent/100)
    
    if (close[1] >= stopPrice or high >= stopPrice)
        strategy.close_all("空止损")
        isShort := false
        partialTpTriggered := false
    
    if (not partialTpTriggered and (close[1] <= firstTpPrice or low <= firstTpPrice))
        strategy.order("空第一止盈", strategy.long, qty=firstTpQty)
        partialTpTriggered := true
        // 在这里重新计算第二止盈价格
        secondTpPrice := low * (1 - 0.04)  // 基于当前最低价再下跌4%
    
    if (close[1] <= secondTpPrice or low <= secondTpPrice)
        strategy.close_all("空第二止盈")
        isShort := false
        partialTpTriggered := false

// === 其他平仓条件 ===
if (exitLong and isLong)
    strategy.close_all("多平仓")
    isLong := false
    partialTpTriggered := false

if (exitShort and isShort)
    strategy.close_all("空平仓")
    isShort := false
    partialTpTriggered := false

// === 绘图 ===
plot(fastEMA, "快速EMA", color=color.blue)
plot(slowEMA, "慢速EMA", color=color.red)
plot(superFastEMA, "超快EMA", color=color.green)

// 绘制止盈止损线
plot(strategy.position_size != 0 ? strategy.position_avg_price : na, "开仓价", color=color.yellow)
plot(strategy.position_size != 0 ? stopPrice : na, "止损线", color=color.red)
plot(strategy.position_size != 0 ? firstTpPrice : na, "第一止盈线", color=color.green)
plot(strategy.position_size != 0 ? secondTpPrice : na, "第二止盈线", color=color.blue)