以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  循环函数语句不执行操作  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=161067)

--  作者:waimm2020
--  发布时间:2018/1/15 14:25:21
--  循环函数语句不执行操作
IF HOLDING=0 AND KDTJ=1 THEN BEGIN     //如果当前是没有持仓的状态,且满足开多条件
  BUY(HOLDING=0,N,MARKETR);   //开多单
  TIMES:=1; 
  WHILE C>ENTERPRICE+ATR*0.5 AND TIMES<4 DO BEGIN
  BUY(HOLDING>0,N,MARKETR); 
  TIMES:=TIMES+1; 
  END
END
老师帮忙看看,循环函数语句不执行加仓动作,问题出现在哪?

--  作者:gxx978
--  发布时间:2018/1/15 14:35:05
--  
循环不能控制加仓的,一条开平仓语句在一根K线上只会执行一次。需要多个开平仓语句,才能在一根K线上触发多次。
--  作者:waimm2020
--  发布时间:2018/1/15 14:40:22
--  
我用一分钟图表跑测试没在同一根K线上面也没加仓的,
图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180115144000.png
图片点击可在新窗口打开查看
镍1805的一分钟图表
[此贴子已经被作者于2018/1/15 14:40:45编辑过]

--  作者:banzhuan
--  发布时间:2018/1/15 15:07:53
--  
把第一个条件中的虚拟持仓=0去掉,您试试
IF HOLDING=0 AND KDTJ=1 THEN BEGIN 
--  作者:waimm2020
--  发布时间:2018/1/16 9:19:02
--  
如何写保证加仓时在同一根K线上连续开仓?


--  作者:banzhuan
--  发布时间:2018/1/16 10:10:28
--  
多次开仓需要添加多个buy语句,比如:
if 开多条件 then
begin
buy()....
buy()....
buy()....
end
[此贴子已经被作者于2018/1/16 10:10:43编辑过]