以文本方式查看主题

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

--  作者:bravefist
--  发布时间:2012/8/1 13:36:49
--  模型编写错误请指点
各位老师,我的思路是:满足上穿,平一半仓;再次满足上穿,平全部仓。按下面编写 

Variable:aa=0;

If aa=1 and cross() then begin

卖掉全部仓位

aa:=0

end

if aa=0 and cross() then begin

卖掉一半仓位

aa:=1

end

执行的结果是:满足上穿,平一半仓;再次上穿,再平一半仓;再次上穿,再平一半仓。请指点,谢谢。


另外cross(ma1,ma2)是指15;00的收盘价达到上穿还是盘中上穿就可以?

   

cross(close,ma)是指15;00的收盘价上穿还是盘中上穿就可以?


--  作者:jinzhe
--  发布时间:2012/8/1 13:45:58
--  
两次上穿是同样的条件吗?
--  作者:bravefist
--  发布时间:2012/8/3 18:15:29
--  请问老师这个空头止盈公式怎么写?

两次上穿完全一样,谢谢


--  作者:bravefist
--  发布时间:2012/8/6 8:56:41
--  

自己顶一下


--  作者:jinzhe
--  发布时间:2012/8/6 9:24:22
--  
两个相同条件会造成有一个条件会无效,我再想想
[此贴子已经被作者于2012-8-6 9:30:17编辑过]

--  作者:jinzhe
--  发布时间:2012/8/6 9:32:56
--  

variable:a=0;
input:n(5);

ma5:ma(c,5);
ma10:ma(c,10);

cond1:=cross(ma5,ma10);
cond2:=cross(ma10,ma5);
cond3:=cross(ma10,ma5);

if cond1 and holding=0 then begin
 buy(holding=0,n,market);
 a:=0;
 end
  if cond2   and a=1 then begin
平多1:sell(holding>0,0,market);
a:=0;
end
 if cond3  and  a=0 then begin
平多2:sell(holding>0,n/2,market);
a:=1;
end

这样的,可行
--  作者:bravefist
--  发布时间:2012/8/6 13:35:25
--  

非常感谢

我试了一下,仍然是每次平1/2,也就是,2,1,1,1。请再帮忙想想,多谢。


--  作者:jinzhe
--  发布时间:2012/8/6 15:34:27
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20120806153258.png
图片点击可在新窗口打开查看
把条件都写上,不能省