以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  条件求助问题  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=182394)

--  作者:marks
--  发布时间:2020/9/28 16:48:19
--  条件求助问题
请帮忙实现个开仓条件:从上一次开仓以后,出现N个K线的最低点且这个最低点大于上一次开仓X个点就加仓,在后台使用,谢谢。
--  作者:FireScript
--  发布时间:2020/9/28 17:11:55
--  

以多头为例:


IF l=llv(L,N) and l>TENTERBARS+X*MINDIFF and TBUYHOLDINGEX(\'\',\'\',1)>0 then tbuy(1,1,mkt);

--  作者:marks
--  发布时间:2020/9/28 17:18:45
--  
再加一个条件,当上面的条件满足后,只要出现H>REF(H,1),就加仓。
就是条件满足后接下来只要出现H>REF(H,1)就可以,不用非得是和上面条件同时满足。

--  作者:FireScript
--  发布时间:2020/9/29 9:05:12
--  
那这个只能用全局变量标记了,否则无法判断满足条件是在前面开仓前还是后。

GLOBALVARIABLE:mk:=0;
//mk=0 限定相同条件的加仓 只加仓一次
IF l=llv(L,N) and l>TENTERBARS+X*MINDIFF and TBUYHOLDINGEX(\'\',\'\',1)>0 and TTYPE(1)=1 and mk=0 then //TTYPE(1)=1 表示上次信号是开仓
begin
tbuy(1,1,mkt);
mk:=1;
end


if mk and H>REF(H,1) and  then tbuy(1,1,mkt);//满足第一次加仓后 才触发这个加仓

//必须在平仓语句里面把mk重置为0
[此贴子已经被作者于2020/9/29 9:06:11编辑过]