如下图,我策略启动后显示这个提示:
此主题相关图片如下:金字塔策略交易 显示失败.jpg
但是我浏览之后发现如下图所示:
在这个K线上开仓价在 最高价、最低价 之间呀, 怎么还是不能开仓?
我按照提示后加了 ,ignorecheckprice 。但是又出现问题了如下图:
此主题相关图片如下:3金字塔问题.jpg
我每次都是 先平仓 然后才开仓的,怎么 还显示资金不够用了?
我的策略是MACD 金叉、死叉 开平仓, 再加上一个止盈、止损 请问有什么问题吗?
这时我的 代码:
//参数
INPUT:ManyStopProfitSet(10,1,100,1); //买多 止赢点数设置
input:ManyStopLossSet(5,1,100,1); //买多 止损点数设置
input:EmptyStopProfitSet(10,1,100,1); //卖空 止赢点数设置
input:EmptyStopLossSet(5,1,100,1); //卖空 止损点数设置
//input:MyEntryPrice(10,1,100,1); //开仓价格
//input:MyExitPrice(10,1,100,1); //平仓价格
//中间变量
DIFF :=EMA(CLOSE,S) - EMA(CLOSE,P);
DEA :=EMA(DIFF,M);
MACD :=2*(DIFF-DEA);
手数:=ss;
//交易条件
开多平空条件:=CROSS(MACD,0);//开多平空条件
开空平多条件:=CROSS(0,MACD);//开空平多条件
//交易系统
MyEntryPrice1 := ref(C,1);
MyExitPrice1 := ref(C,1);
平空:SELLSHORT(开多平空条件,手数,ref(C,1));
平多:SELL(开空平多条件,手数,ref(C,1)); //,ignorecheckprice
开多:BUY(开多平空条件,手数,ref(C,1));
开空:BUYSHORT(开空平多条件,手数,ref(C,1));//,ignorecheckprice
//当前持仓:HOLDING,COLORGRAY,LINETHICK0;
//当前资产:ASSET,NOAXIS,COLORGRAY;
// EXITPRICE 平仓价格 ENTERPRICE 上次开仓价 AVGENTERPRICE 买入均价
//止盈止损
// 多仓止盈止损
if holding>0 then
begin
//止盈
SELL(HIGH > (ENTERPRICE +ManyStopProfitSet),手数,ENTERPRICE +ManyStopProfitSet);
//止损
SELL(low > (ENTERPRICE - ManyStopLossSet),手数,ENTERPRICE - ManyStopLossSet);
end;
// 空仓止盈止损
if HOLDING <0 then
begin
//止盈
SELLSHORT(LOW < (enterprice - EmptyStopProfitSet ),手数,enterprice - EmptyStopProfitSet);
//止损
SELLSHORT(high > (enterprice + EmptyStopLossSet),手数,enterprice + EmptyStopLossSet);
end;
//注意交易系统先开后平的原则
限价下单要这么写,你照着都改一下
平空:SELLSHORT(开多平空条件,手数,LIMITR,ref(C,1));