本帖最后由 技术006 于 2022-5-14 21:33 编辑
[PEL] 复制代码 卖空:=CLOSE<OPEN or (open=close and low<open)
买多:=CLOSE>OPEN or (open=close and HIGH>open)
if VOL>400 and 卖空 then begin
//开空语句,自行填充参数 //问题1:我给你的策略是基于后台程序化处理的,所以开平语句应该是后台的开平仓函数,即此处应该是tbuyshort这类后台函数(其他开平语句的问题同理)。 其次下单手数填0,代表的是实际账号全平。这个你要知道,当多策略同品种时,会干扰其他策略的平仓操作。
//问题2:buyshort(条件,手数,指令,[价格])这是图表的参数说明,所以,你参数3应该是指令,而参数4作为下单价格是和指令结合的,一般情况下限价指令才需要指定价格。这个问题建议好好阅读下参数说明。//问题3:如果是图表策略,DYNAINFO因为没有历史值,是不符合图表机制的,所以基本上都不能用在图表钟。
buyshort(1,0,DYNAINFO( 7));//检索tbuyshort
end
//如果上一周期收盘价高于开盘价,或者开盘价等于收盘价且最高价高于开盘价,则买入开仓。
这个开多部分,参照前的开空条件自行尝试实现. 开多用tbuy
if VOL>400 and 买多 then begin
//开空语句,自行填充参数
buy(1,0,DYNAINFO( 7));
end
////问题2:以下部分代码的判断逻辑不对,我在1楼的代码中已经提供条件处理,你只要填充开平语句即可。
//1个点的赢损处理
if 卖空 and(DYNAINFO( 7)<>(OAMOUNT /OVOL))then begin
SELLSHORT(1,0,LIMIT,DYNAINFO( 7));
end;
if 买多 and(DYNAINFO( 7)<>(OAMOUNT /OVOL))then begin
SELL(1,0,LIMIT,DYNAINFO( 7));
end;
|