以文本方式查看主题

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

--  作者:carney
--  发布时间:2016/11/9 23:29:46
--  取周期数

比如有数值A值,

当A值大于之前最近的A值500时,取之前A值到当前的周期数。

 

是否需要循环语句?怎么写?


--  作者:jinzhe
--  发布时间:2016/11/10 9:01:15
--  
你是不是发过一个一样的?变量A,大小500,都一样的?
--  作者:carney
--  发布时间:2016/11/10 9:20:47
--  

那个是有前提的周期条件,在x周期之内的

aa:=a;
s1:=0;

for i=1 to x do begin
   if a>aa[barpos-i]+500 then begin
       s1:=i;
       break;
   end
end

现在是不设前提的周期条件

 

在昨晚的条件中再修改一条,

当A值大于之前最近的A值500时,且数值A值在周期内回调小于200,取之前A值到当前的周期数。


--  作者:jinzhe
--  发布时间:2016/11/10 9:32:52
--  

aa:=a;
s1:=0;

for i=1 to barpos-1 do begin
   if a>aa[barpos-i]+500 then begin
       s1:=i;
       break;
   end
end


--  作者:carney
--  发布时间:2016/11/10 9:34:11
--  
刚才还增加了一个条件的,“且数值A值在周期内回调小于200”
--  作者:carney
--  发布时间:2016/11/10 10:54:05
--  
老师,这个新增条件,可以解决吗?
--  作者:jinzhe
--  发布时间:2016/11/10 11:00:27
--  

怎么个回调法?


--  作者:carney
--  发布时间:2016/11/10 11:42:03
--  

就是在周期内:

数值A值的低点 - 低点之前且在周期内A值的高点 > -200。

 

如果周期内不存在回调,那就直接取A值+500的周期。


--  作者:jinzhe
--  发布时间:2016/11/10 13:32:59
--  
这个判断不了
--  作者:carney
--  发布时间:2016/11/11 16:47:26
--  

比如数值A值

只取ref(A,1)+1>=A,就是数值只随周期递增+1或者小于递增+1。如果大于时,取递增+1。

 

该怎么写?