Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共8 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:前一个周期满足某条件

1楼
arutema 发表于:2021/3/17 10:25:01

老师,if ref(dt,1)=1 then begin
KD:=TDC and tdh and tdl and tv and tv1;          //开多条件
end  dt是条件

 错那呢

2楼
gxx978 发表于:2021/3/17 10:39:26
单这段代码逻辑写法上没有问题啊,你是输出的某个值不对?
3楼
arutema 发表于:2021/3/17 15:05:52

当前周期满足 KD:=TDC and tdh and tdl and tv and tv1;

上个周期满足dt  为啥输出结果都对不上 不解

 

4楼
arutema 发表于:2021/3/17 15:07:27

if ref(dt,1)=1 then begin
KD:=TDC and tdh and tdl and tv and tv1;          //开多条件
end
if ref(kt,1)=1 then  begin
PD:=tkc and tkh and tkl and tv and tv1;          //平多条件
end
if ref(kt,1)=1 then begin
KK:=tkc and tkh and tkl and tv and tv1;          //开空条件
end
if ref(dt,1)=1 then begin
PK:=TDC and tdh and tdl and tv and tv1;          //平空条件
end
平多:SELL(PD,1,THISCLOSE);                       //平多信号
平空:SELLSHORT(PK,1,THISCLOSE);                  //平空信号
开多:BUY(KD AND HOLDING=0,1,THISCLOSE);          //开多信号

开空:BUYSHORT(KK AND HOLDING=0,1,THISCLOSE);     //开空信号

 

顺序有错吗

5楼
gxx978 发表于:2021/3/17 15:14:51
你这代码的逻辑含义能表述下吗?当根K线满足什么条件下,进行开多呢,是前一根K线满足dt,并且当根K线满足TDC AND TDH AND TDL AND TV AND TV1就开多?
6楼
arutema 发表于:2021/3/17 15:39:14

做空为例

x1:=(REF(o,1)+REF(o,2)+REF(o,3))/3;
x2:=(REF(h,1)+REF(h,2)+REF(h,3))/3;
x3:=(REF(l,1)+REF(L,2)+REF(L,3))/3;
x4:=(REF(CLOSE,1)+REF(CLOSE,2)+REF(CLOSE,3))/3;

dc:=(x1+x2+x3+x4)/4;
kt:=c>(dc+(c-ref(l,1);

当前周收盘满足KK:=tkc and tkh and tkl and tv and tv1的同时上个周期满足kt条件 才能执行, 让后执行做空  不知道这样表述是否

7楼
arutema 发表于:2021/3/17 15:42:41
(c-ref(l,1)的值必须是正值
8楼
gxx978 发表于:2021/3/17 15:43:31
那直接这样编写代码就可以了,不需要用if来判断了:
KK:=ref(kt,1)=1 and tkc and tkh and tkl and tv and tv1;
[此贴子已经被作者于2021/3/17 15:46:06编辑过]
共8 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 1.46875 s, 3 queries.