以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  请问为何后台程式与图表程式一样的条件,开仓信号却有不同。  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=94920)

--  作者:IF左边
--  发布时间:2016/3/18 14:16:15
--  请问为何后台程式与图表程式一样的条件,开仓信号却有不同。
如题。
--  作者:IF左边
--  发布时间:2016/3/18 14:21:41
--  
if duo then begin
   tbuy(1,手数,mkt);
   buy(1,手数,marketr);
   n:=1;
   DEBUGFILE(\'D:\\ZJD\',\'N等于%.2f\',1);
   end
  s:=ref(15atr,tenterbars); 
  
if kong   then begin
   tbuyshort(1,手数,mkt);
   buyshort(1,手数,marketr);
   m:=1;
   DEBUGFILE(\'D:\\ZJD\',\'M等于%.2f\',1);
   end
s:=ref(15atr,tenterbars);

if l<=tENTERPRICE-z*s and n=1 and tENTERBARS>0 then begin
 tsell(1,holding,mkt);
 n:=0;
 end
 
if  h>=tENTERPRICE+z*s and m=1 and tENTERBARS>0 then BEGIN
tsellshort(1,holding,mkt);
m:=0;
 end
 这是后台的代码。

--  作者:IF左边
--  发布时间:2016/3/18 14:24:18
--  
下面是图表的代码。DUO与KONG是一样的条件。
if duo   then begin
  sellshort(1,holding,marketr);
   buy(holding=0,手数,marketr);
   n:=1;
   end
  s:=ref(15atr,enterbars); 
  
     
if kong  then begin
 sell(1,holding,marketr);
   buyshort(holding=0,手数,marketr);
   m:=1;
   end
s:=ref(15atr,enterbars);

if n=1 and l<=ENTERPRICE-z*s and ENTERBARS>0 then begin
 sell(1,holding,marketr);
 n:=0;
 end
 
if m=1 and  h>=ENTERPRICE+z*s and ENTERBARS>0 then BEGIN
sellshort(1,holding,marketr);
m:=0;
 end

--  作者:IF左边
--  发布时间:2016/3/18 14:25:04
--  

图片点击可在新窗口打开查看此主题相关图片如下:21.png
图片点击可在新窗口打开查看

--  作者:IF左边
--  发布时间:2016/3/18 14:25:20
--  
以上这个是图表的信号
--  作者:IF左边
--  发布时间:2016/3/18 14:25:39
--  

图片点击可在新窗口打开查看此主题相关图片如下:22.png
图片点击可在新窗口打开查看

--  作者:IF左边
--  发布时间:2016/3/18 14:26:30
--  
第二个图是后台程式的信号。我用全局变量控制了开仓次数。后台还是会发生开多信号,是什么原因。
--  作者:IF左边
--  发布时间:2016/3/18 14:28:33
--  
老师帮我看一下,到底是代码哪里写错了吗,或者后台要限制开仓怎么处理为好
--  作者:jinzhe
--  发布时间:2016/3/18 14:28:42
--  
就如同之前那个帖子讲过的那样,后台不看图表上的信号,所以后台到底发生了什么,用debugout等之类的调试函数,进行调试,看看到底是什么原因导致了交易的不同
--  作者:IF左边
--  发布时间:2016/3/18 14:41:01
--  
请教后台如何来限制达到条件只开一次仓,仓位平了,再达到条件再开一次