以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  为什么三个相等  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=84744)

--  作者:haizxj
--  发布时间:2015/9/5 21:38:26
--  为什么三个相等

DD:barpos;
if pd then
Begin
SELL(1,0,LIMITR,ma10);
r1:barpos;
End
if pk then
Begin
SELLshort(1,0,LIMITR,ma10);
r2:barpos;
End

 

DD=r1=r2


--  作者:jinzhe
--  发布时间:2015/9/6 9:18:42
--  
把完整的代码都发一下
--  作者:haizxj
--  发布时间:2015/9/6 19:17:58
--  

ma10:ma(o,10);
PD:=l<ma10; 
PK:=h>ma10 ;
if pd then
Begin
SELL(1,0,LIMITR,ma10);
r1:barpos;
End
if pk then
Begin
SELLshort(1,0,LIMITR,ma10);
r2:barpos;
End
r3:=max(r1,r2);
KD:=  ma10>ref(ma10,1) and o>ma10  AND barpos>r1  ;          //开多条件
        //平多条件
KK:=  ma10<ref(ma10,1) and o<ma10   AND barpos>r2;          //开空条件

//SELLshort(Pk and holding<0,1,LIMITR,c);
//SELL(PD and holding>0,1,LIMITR,c);
buy(kd and holding=0 ,1,LIMITR,c);

buyshort(kk and holding=0 ,1,LIMITR,c);


--  作者:jinzhe
--  发布时间:2015/9/7 9:01:27
--  
这3个怎么会不相等?barpos的值难道在同一根l线上会不一样?
--  作者:haizxj
--  发布时间:2015/9/7 9:06:09
--  

平空时,我已将值赋给R1,r2,然后跟实时的值比较是否大于小于

以此来锁定开仓,因为HOLDING锁不住

怎么不明白?


--  作者:jinzhe
--  发布时间:2015/9/7 9:23:31
--  

if pd then
这样的思路来限定变量在平多是时候被赋值?

你需要加holding>0这个一个条件

 

同样pk 也需要加一个holding<0的条件

 

因为你的PD和PK能同时成立导致同时被赋值

[此贴子已经被作者于2015/9/7 9:38:29编辑过]

--  作者:haizxj
--  发布时间:2015/9/7 9:49:43
--  
加了holding,可是值要么不出来,要不不显示
--  作者:jinzhe
--  发布时间:2015/9/7 9:58:48
--  

你把鼠标放到平仓k线上,


--  作者:haizxj
--  发布时间:2015/9/7 10:32:44
--  

放在平仓K上BArPOS是相等,放在别的K应不等,可是BArPOS数字还没有,要不就是数字相等


--  作者:jinzhe
--  发布时间:2015/9/7 10:38:26
--  
看不明白你说的, 你截图说明一下