
等级: 新手上路
- 注册:
- 2025-4-9
- 曾用名:
|
//=== 输入参数 ===//
INPUT:
N1(5,1,20), // 短期均线周期
N2(20,5,60), // 中期均线周期
N3(60,10,120), // 长期均线周期
RSI_Period(14,5,30), // RSI周期
VolRatio(1.5,1,3), // 量能放大倍数
MinRSI(30,20,40), // RSI超卖阈值
StopLossPct(0.95,0.8,0.97), // 动态止损比例
TakeProfitPct(1.08,1.03,1.15); // 止盈比例
//=== 指标计算 ===//
MA5:MA(CLOSE,N1);
MA20:MA(CLOSE,N2);
MA60:MA(CLOSE,N3);
// 标准RSI计算公式(替换原未定义函数)
LC := REF(CLOSE,1);
RSI_UP := SMA(MAX(CLOSE-LC,0),RSI_Period,1);
RSI_DOWN := SMA(ABS(CLOSE-LC),RSI_Period,1);
RSI14:IF(RSI_DOWN>0, RSI_UP/RSI_DOWN*100, 100);
MACD_DIF:EMA(CLOSE,12)-EMA(CLOSE,26);
MACD_DEA:EMA(MACD_DIF,9);
MACD_HIST:(MACD_DIF-MACD_DEA)*2;
Vol5:=MA(VOL,N1);
HHV_10:=HHV(HIGH,10);
LLV_10:=LLV(LOW,10);
//=== 交易条件 ===//
// 买入条件:均线金叉+趋势确认+量价配合
BuyCondition := CROSS(MA5,MA20) AND MA20>MA60 // 均线系统多头
AND CLOSE>MA20 // 价格在趋势线上方
AND RSI14<MinRSI+10 AND RSI14>MinRSI // RSI从超卖区回升
AND MACD_HIST>REF(MACD_HIST,1) // MACD柱状线抽脚
AND VOL>Vol5*VolRatio // 量能放大
AND CLOSE>(HHV_10+LLV_10)/2 // 突破近期中轴
AND (HIGH-LOW)/LOW>0.04; // 波动率过滤
// 动态止损价计算(最近5日最低价的95%)
StopPrice := LLV(LOW,5)*StopLossPct;
//=== 买入信号处理 ===//
IF BuyCondition THEN
BEGIN
DRAWICON(1,LOW*0.98,1); // 买入图标
DRAWTEXT(1,LOW*0.95,'B',COLORYELLOW); // 买入标记
ENTERPRICE := CLOSE; // 记录入场价
buy(1,1,marketr);
END
//=== 卖出条件 ===//
SellCondition := CROSS(StopPrice,CLOSE) // 止损触发
OR CLOSE/ENTERPRICE>TakeProfitPct // 止盈触发
OR CROSS(MA20,MA5) // 均线死叉
OR (RSI14>70 AND MACD_HIST<0); // 超买且动能减弱
//=== 卖出信号处理 ===//
IF SellCondition THEN
BEGIN
DRAWICON(1,HIGH*1.02,2),COLORRED;
DRAWTEXT(1,HIGH*1.05,'S',COLORGREEN);
sell(1,holding,limitr,CLOSE*0.998);
END
//=== 趋势可视化 ===//
DRAWKLINE(H,O,L,C);
DRAWCOLORLINE(MA5>MA20,MA5,COLORRED,COLORGREEN); // 均线颜色区分趋势
DRAWCOLORBAR(MACD_HIST>0,MACD_HIST,COLORRED,COLORGREEN); // MACD柱状图
|
|