以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  如何能消除多余重复的做多条件  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=173830)

--  作者:zytzwla
--  发布时间:2020/1/3 12:29:01
--  如何能消除多余重复的做多条件
[求助]求教:做多条件成立后,到做空条件成立之间多次出现重复做多条件成立,如何能消除或者说忽略这多空之间多余重复的做多条件,麻烦老师教我图片点击可在新窗口打开查看
--  作者:FireScript
--  发布时间:2020/1/3 13:02:19
--  
 buy(开仓条件 and holding=0,1,market);
--  作者:zytzwla
--  发布时间:2020/1/3 13:37:27
--  
 还有其他方式表达吗老师?我是用在指标上的,不是交易系统上图片点击可在新窗口打开查看
--  作者:FireScript
--  发布时间:2020/1/3 13:44:22
--  
 要用全局变量。
满足条件时候给全局变量赋值,满足反向条件时候重置全局变量。
具体修改方案,需要你提供下你的代码。在你代码基础上直接修改比较方便。

--  作者:zytzwla
--  发布时间:2020/1/3 14:25:30
--  
MA1:MA(C,10);
MA2:MA(C,30);
SC:=CROSS(MA2,MA1);
JC:=CROSS(MA1,MA2);
H1:=VALUEWHEN(SC,MA2);
L1:=VALUEWHEN(JC,MA1);
SC1:=CROSS(L,L1);
JC1:=CROSS(H,H1);
KT:=SC OR SC1;
DT:=JC OR JC1;
DRAWTEXT(KT,H,\'开空\');
DRAWTEXT(DT,L,\'开多\'),COLORMAGENTA;


--  作者:FireScript
--  发布时间:2020/1/3 14:57:00
--  
 VARIABLE:mark:=0;
MA1:MA(C,10);
MA2:MA(C,30);
SC:=CROSS(MA2,MA1);
JC:=CROSS(MA1,MA2);
H1:=VALUEWHEN(SC,MA2);
L1:=VALUEWHEN(JC,MA1);
SC1:=CROSS(L,L1);
JC1:=CROSS(H,H1);
KT:SC OR SC1;
DT:JC OR JC1;

DRAWTEXT(KT and mark<>-1,H,\'开空\'),COLORGREEN;
DRAWTEXT(DT and mark<>1,L,\'开多\'),COLORRED;

if KT then  
begin
if mark<>-1 then mark:=-1;
end

if DT then  
begin
if mark<>1 then mark:=1;
end


代码如上。但是你这里还有点问题。就是DT,KT有时候会在同一个K上同时满足条件。

--  作者:zytzwla
--  发布时间:2020/1/3 15:03:44
--  
 谢谢老师教我,我再琢磨琢磨             图片点击可在新窗口打开查看