
এই কৌশলটি একটি উচ্চ-ফ্রিকোয়েন্সি পরিমাণযুক্ত ট্রেডিং সিস্টেম যা ইএমএ এবং এমএসিডি সূচকগুলির উপর ভিত্তি করে, এটিআর ডায়নামিক স্টপ লস এবং স্মার্ট পজিশন ম্যানেজমেন্টের সাথে মিলিত। কৌশলটি 9 টি চক্র এবং 21 টি চক্রের ইএমএ ক্রসকে প্রধান প্রবেশের সংকেত হিসাবে গ্রহণ করে, এটিআর ডায়নামিক হিসাবের মাধ্যমে স্টপ লস এবং লাভের লক্ষ্যমাত্রার মাধ্যমে সংকেত নিশ্চিতকরণের জন্য, এটিআর ডায়নামিক হিসাবের মাধ্যমে একটি সম্পূর্ণ ট্রেডিং ক্লোজিং এবং ঝুঁকি নিয়ন্ত্রণ ব্যবস্থা উপলব্ধ করে।
কৌশলটি ট্রেডিংয়ের সুযোগগুলি সনাক্ত করার জন্য একাধিক স্তরের প্রযুক্তিগত সূচকের সমন্বয় ব্যবহার করে। প্রথমত, সংক্ষিপ্ত সময়ের (৯) এবং দীর্ঘ সময়ের (২১) ইএমএ গড়ের ক্রসকে প্রাথমিক সংকেত হিসাবে ব্যবহার করে, যখন স্বল্পমেয়াদী গড়ের দীর্ঘমেয়াদী গড়ের উপরে অতিক্রম করে তখন একটি বহু সংকেত তৈরি করে, বিপরীতে একটি শূন্য সংকেত তৈরি করে। দ্বিতীয়ত, একটি অপ্টিমাইজড এমএসিডি সূচক (৬, ১৩, ৪) ব্যবহার করে যা একটি নিশ্চিতকরণ সংকেত হিসাবে, ম্যাকড লাইন এবং সিগন্যাল লাইনের অবস্থান সম্পর্ককে ইএমএ ক্রস দিকের সাথে সামঞ্জস্যপূর্ণ রাখতে বলে। ঝুঁকি নিয়ন্ত্রণের ক্ষেত্রে, কৌশলটি গতিশীলভাবে এটিআর সূচক ব্যবহার করে, যা স্টপ লস দূরত্ব গণনা করে এবং 1: 2 ঝুঁকি-লাভের অনুপাত বজায় রাখে।
এই কৌশলটি ক্লাসিক প্রযুক্তিগত সূচক এবং আধুনিক ঝুঁকি ব্যবস্থাপনার পদ্ধতির সমন্বয় করে একটি সম্পূর্ণ উচ্চ-ফ্রিকোয়েন্সি ট্রেডিং সিস্টেম তৈরি করে। কৌশলটির মূল সুবিধা হ’ল একাধিক সংকেত স্বীকৃতি এবং কঠোর ঝুঁকি নিয়ন্ত্রণ, তবে এখনও রিয়েল-টাইম পরিবেশে পুঙ্খানুপুঙ্খভাবে পরীক্ষা এবং অপ্টিমাইজেশন প্রয়োজন। ক্রমাগত উন্নতি এবং ঝুঁকি পরিচালনার পরিমার্জনের মাধ্যমে, কৌশলটি বিভিন্ন বাজারের পরিবেশে স্থিতিশীল পারফরম্যান্স বজায় রাখার আশা করা হচ্ছে।
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-04 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("High-Frequency Trade Script with EMA, MACD, and ATR-based TP/SL", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=2, initial_capital=100000)
// إعداد المؤشرات
emaBuy = ta.ema(close, 9) // EMA بفترة قصيرة للشراء
emaSell = ta.ema(close, 21) // EMA بفترة أطول للبيع
[macdLine, signalLine, _] = ta.macd(close, 6, 13, 4) // MACD بفترات قصيرة
atr = ta.atr(14) // حساب مؤشر ATR
// إعداد نسبة وقف الخسارة وجني الأرباح
stopLossATRMultiplier = 1.5 // تقليل وقف الخسارة لـ 1.5 * ATR
riskToRewardRatio = 2.0 // نسبة العائد إلى المخاطرة 1:2
// إعداد إدارة المخاطر
riskPercentage = 1.0 // المخاطرة كـ 1% من رأس المال
capital = strategy.equity // إجمالي رأس المال
riskAmount = capital * (riskPercentage / 100) // مقدار المخاطرة
// شروط إشارات الشراء: تقاطع EMA القصير فوق الطويل و MACD أعلى من Signal
longCondition = ta.crossover(emaBuy, emaSell) and macdLine > signalLine
// شروط إشارات البيع: تقاطع EMA القصير تحت الطويل و MACD أسفل Signal
shortCondition = ta.crossunder(emaBuy, emaSell) and macdLine < signalLine
// --- تنفيذ أوامر الشراء والبيع تلقائيًا مع وقف الخسارة وجني الأرباح --- //
// تعريف خطوط وقف الخسارة وجني الأرباح
var line longStopLossLine = na
var line longTakeProfitLine = na
var line shortStopLossLine = na
var line shortTakeProfitLine = na
if (longCondition)
longEntryPrice = close // سعر الدخول للشراء
longStopLoss = longEntryPrice - (atr * stopLossATRMultiplier) // وقف الخسارة بناءً على ATR
longTakeProfit = longEntryPrice + ((longEntryPrice - longStopLoss) * riskToRewardRatio) // جني الأرباح بنسبة 1:2
// حساب حجم الصفقة بناءً على مقدار المخاطرة
positionSize = riskAmount / (longEntryPrice - longStopLoss) // حجم العقد
// إدخال أمر الشراء
strategy.entry("Buy", strategy.long, qty=positionSize)
// إعداد أوامر وقف الخسارة وجني الأرباح
strategy.exit("Take Profit/Stop Loss", "Buy", stop=longStopLoss, limit=longTakeProfit)
// رسم الخطوط لجني الأرباح ووقف الخسارة
// longStopLossLine := line.new(bar_index, longStopLoss, bar_index + 1, longStopLoss, color=color.red, width=1, style=line.style_dashed) // خط وقف الخسارة
// longTakeProfitLine := line.new(bar_index, longTakeProfit, bar_index + 1, longTakeProfit, color=color.green, width=1, style=line.style_dashed) // خط جني الأرباح
if (shortCondition)
shortEntryPrice = close // سعر الدخول للبيع
shortStopLoss = shortEntryPrice + (atr * stopLossATRMultiplier) // وقف الخسارة بناءً على ATR
shortTakeProfit = shortEntryPrice - ((shortStopLoss - shortEntryPrice) * riskToRewardRatio) // جني الأرباح بنسبة 1:2
// حساب حجم الصفقة بناءً على مقدار المخاطرة
positionSize = riskAmount / (shortStopLoss - shortEntryPrice) // حجم العقد
// إدخال أمر البيع
strategy.entry("Sell", strategy.short, qty=positionSize)
// إعداد أوامر وقف الخسارة وجني الأرباح
strategy.exit("Take Profit/Stop Loss", "Sell", stop=shortStopLoss, limit=shortTakeProfit)
// رسم الخطوط لجني الأرباح ووقف الخسارة
// shortStopLossLine := line.new(bar_index, shortStopLoss, bar_index + 1, shortStopLoss, color=color.red, width=1, style=line.style_dashed) // خط وقف الخسارة
// shortTakeProfitLine := line.new(bar_index, shortTakeProfit, bar_index + 1, shortTakeProfit, color=color.green, width=1, style=line.style_dashed) // خط جني الأرباح
// --- رسم مؤشرات منفصلة --- //
plot(emaBuy, title="EMA Buy (9)", color=color.green, linewidth=2) // EMA الشراء
plot(emaSell, title="EMA Sell (21)", color=color.red, linewidth=2) // EMA البيع
plot(macdLine, title="MACD Line", color=color.blue, linewidth=1) // MACD Line
plot(signalLine, title="Signal Line", color=color.orange, linewidth=1) // Signal Line