
یہ حکمت عملی ایک جامع تجارتی نظام ہے جس میں کثیر دورانیہ کے رجحانات کا سراغ لگانا ، ٹرانزیکشن حجم تجزیہ اور متحرک رسک مینجمنٹ شامل ہے۔ اس نے متعدد تکنیکی اشارے جیسے میڈین لائن ((EMA) ، متحرک اشارے ((ADX) ، نسبتا strong مضبوط اشارے ((RSI) ، اور ٹرانزیکشن وزن کی اوسط قیمت ((VWAP) کو مربوط کرکے ایک خود کار طریقے سے تجارت کا فریم ورک تشکیل دیا ہے۔ حکمت عملی میں مختلف وقت کے دورانیوں میں مارکیٹ کی شکل کی شناخت پر خصوصی زور دیا گیا ہے ، اور اس موقع کو بہتر بنانے کے لئے ٹرانزیکشن کی خصوصیات کو جوڑنے کے لئے۔
اس حکمت عملی میں درج ذیل بنیادی اجزاء پر مشتمل ہے:
اس حکمت عملی میں مارکیٹ کے رجحانات ، اتار چڑھاؤ اور حجم کے بارے میں ایک جامع تجزیہ کو متعدد سطحوں پر تکنیکی اشارے کے مجموعے کے ذریعہ حاصل کیا گیا ہے۔ اس کی بنیادی خوبی یہ ہے کہ کثیر دورانیہ تجزیہ اور سخت خطرے کے کنٹرول کو ملا کر مختلف مارکیٹ کے ماحول میں مستحکم کارکردگی کو برقرار رکھا جاسکتا ہے۔ مستقبل میں مشین لرننگ جیسی جدید ٹیکنالوجیز کو متعارف کرانے سے حکمت عملی کی موافقت اور استحکام کو مزید بہتر بنایا جاسکتا ہے۔
/*backtest
start: 2024-03-07 18:40:00
end: 2025-02-17 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"DOGE_USDT"}]
*/
//@version=6
strategy("优化后策略框架", overlay=true)
// 输入参数
ema_length = input.int(20, title="EMA周期")
adx_length = input.int(14, title="ADX周期")
rsi_length = input.int(21, title="RSI周期")
atr_length = input.int(14, title="ATR周期")
volume_length = input.int(20, title="成交量均值周期")
fibonacci_level = 1.618 // 斐波那契扩展位161.8%
// 计算技术指标
ema = ta.ema(close, ema_length)
// 使用ta.dmi()来获取+DI, -DI 和 ADX
[dm_plus, dm_minus, adx] = ta.dmi(adx_length, adx_length)
// 计算RSI和ATR
rsi = ta.rsi(close, rsi_length)
atr = ta.atr(atr_length)
vwap = ta.vwap(close)
avg_volume = ta.sma(volume, volume_length)
// 定义趋势
bull_trend = close > ema and adx > 25
bear_trend = close < ema and adx > 25
range_market = adx < 25
// VWAP分层定位
upper_bound = vwap + 1.5 * atr
lower_bound = vwap - 1.5 * atr
// 计算4小时图的信号
four_hour_ema = request.security(syminfo.tickerid, "240", ta.ema(close, ema_length))
four_hour_vwap = request.security(syminfo.tickerid, "240", ta.vwap(close))
four_hour_rsi = request.security(syminfo.tickerid, "240", ta.rsi(close, rsi_length))
four_hour_volume = request.security(syminfo.tickerid, "240", ta.sma(volume, volume_length))
// 多头入场条件
long_condition = bull_trend and (close[1] < four_hour_ema or close[1] < four_hour_vwap) and rsi[1] < 45 and rsi[0] > 40 and volume < avg_volume * 0.7
// 空头入场条件
short_condition = bear_trend and (close[1] > four_hour_ema or close[1] > four_hour_vwap) and rsi[1] > 55 and rsi[0] < 60 and volume < avg_volume * 0.8
// 计算止损和止盈
long_stop = close - 1.5 * atr
short_stop = close + 1.5 * atr
long_target = vwap + atr // 第一目标,VWAP+1×ATR
short_target = vwap - atr // 第一目标,VWAP-1×ATR
fibonacci_target = close + (fibonacci_level * (high - low)) // 斐波那契161.8%目标
// 计算头寸规模(仓位控制)
risk_per_trade = 0.01 // 单笔风险为账户净值的1%
account_balance = strategy.equity
position_size = (account_balance * risk_per_trade) / (1.5 * atr)
// 绘制买卖信号
plotshape(series=long_condition, title="多头入场", location=location.belowbar, color=color.green, style=shape.triangleup, text="BUY")
plotshape(series=short_condition, title="空头入场", location=location.abovebar, color=color.red, style=shape.triangledown, text="SELL")
// 执行策略
if (long_condition)
strategy.entry("Long", strategy.long, qty=position_size)
if (short_condition)
strategy.entry("Short", strategy.short, qty=position_size)
strategy.exit("Take Profit/Stop Loss", "Long", stop=long_stop, limit=long_target)
strategy.exit("Take Profit/Stop Loss", "Long", stop=long_stop, limit=fibonacci_target)
strategy.exit("Take Profit/Stop Loss", "Short", stop=short_stop, limit=short_target)
strategy.exit("Take Profit/Stop Loss", "Short", stop=short_stop, limit=fibonacci_target)
// 绘制VWAP和超买超卖区
plot(vwap, title="VWAP", color=color.blue)
plot(upper_bound, title="超买区", color=color.red, linewidth=2, style=plot.style_line)
plot(lower_bound, title="超卖区", color=color.green, linewidth=2, style=plot.style_line)