以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  为什么我做出的标志变成一长串?  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=85629)

--  作者:Walter5
--  发布时间:2015/9/25 8:21:03
--  为什么我做出的标志变成一长串?

请教一下:

我想在分笔线中找出连续2个上升的然后标志为“买入”,接着找出连续两个下降的标为“卖出”,但是我做出的指标交易却画出两个“买入””卖出“长串,不知错在哪里?

 

 

 Variable:flagbuy=0;
 count_total:datacount,linethick0;
 k:=close;
   
  for i=1 to datacount do
  Begin
  
   if k[i]>k[i-1] and k[i-1]>k[i-2] and flagbuy=0 then begin
   flagbuy:=1;
   drawtext(1,k[i],\'买入\',colorred);
   end
   
      
   if k[i]<k[i-1] and k[i-1]<k[i-2] and flagbuy=1 then begin
   flagbuy:=0;
   drawtext(1,k[i],\'卖出\',colorgreen);
   end
     
  End;

 

 


--  作者:Walter5
--  发布时间:2015/9/25 8:29:05
--  

如图


--  作者:Walter5
--  发布时间:2015/9/25 8:30:02
--  

如图


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


--  作者:jinzhe
--  发布时间:2015/9/25 8:52:56
--  

写复杂了,

连续下降drawtext(close<ref(close,1) and ref(close,1)<ref(c,2),close,\'下降\')

上升的判断反过来写就好


--  作者:Walter5
--  发布时间:2015/9/25 9:57:19
--  

谢谢。可是您能帮我分析一下我原来的公式哪里出错吗?因为我以后可能也会用类似的结构,很想知道错在哪里。

是不是datacount 有问题?

 

而且我是想如果有第一个买入信号出现,那么第二个连续的买入信号就不显示出来。同理只显示第一个卖出信号。就是说买入信号和卖出信号是间断出现,不能连续出现。


--  作者:jinzhe
--  发布时间:2015/9/25 10:07:20
--  
全局变量定义请问是做什么用的?
--  作者:Walter5
--  发布时间:2015/9/25 10:22:11
--  

用来判断买入信号是否第一个,如果之前没买入信号那此次就显示买入,如果之前已经有就不显示。


--  作者:jinzhe
--  发布时间:2015/9/25 10:53:25
--  

rinmode:0;

variable:ss[]=0;
variable:flagbuy=0;
 count_total:datacount,linethick0;
 k:=close;


 
   if k[barpos]>k[barpos-1] and k[barpos-1]>k[barpos-2] and flagbuy=0 then begin
   flagbuy:=1;
   
   drawtext(1,k[barpos],\'买入\',colorred);
   end
  
     
   if k[barpos]<k[barpos-1] and k[barpos-1]<k[barpos-2] and flagbuy=1 then begin
   flagbuy:=0;
   drawtext(1,k[barpos],\'卖出\',colorgreen);
   end

 

 

你这个是序列数组用的错了,要用逐k线计算,然后根据序列数组的特性做计算


--  作者:jinzhe
--  发布时间:2015/9/25 10:53:40
--  

http://www.weistock.com/bbs/dispbbs.asp?BoardID=10&ID=30380&skin=0

金字塔怎么用数组参考这个链接,里面有详细说明


--  作者:Walter5
--  发布时间:2015/9/25 12:43:30
--  

非常感谢!请接受我滔滔的敬仰之情。几分钟就搞定我2天的烦恼。

 

您所给的链接我之前都看过,但是还是不明白我的公式有什么错,即使在逐K模式下我也试过,也是这样一长串。我知道是datacount 的问题,但是想不通它具体错误机制,您能详细解释一下吗?

 

譬如把你上面的barpos都置换成datacount不是一样吗,因为datacount在每增加一个点(或K线)数值都加1,那么逐K计算每次的K[datacount]也不同呀?