| 以文本方式查看主题 
 -  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
 --  公式模型编写问题提交  (http://www.weistock.com/bbs/list.asp?boardid=4)
 ----  序列模式和逐K线模式  (http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=174257)
 
 
 | 
    
    
      | --  作者:OscarDeng --  发布时间:2020/2/12 9:35:29
 --  序列模式和逐K线模式
 我以前一直在用文华财经的逐K线模式和TB的满足条件立即下单模式,  但是你们还有个序列模式 , 我不是太懂。 序列模式是只运行一次, 那在程序运行当中, 为什么他只需要运行一次呢?
 
 为了更能说明系统两种模式下的公式运行特点,特制作一个计算移动平均线的公式,如下: //用于序列模式下运行的公式: INPUT:N(5,2,500);      //参数申明 RUNMODE:1;              //运行于序列模式 VARIABLE:I=0,S=0; VAR1:=C;//变量申明 FOR J=1 TO DATACOUNT DO BEGIN  S:=S+VAR1[J];  IF J>=N THEN BEGIN   IF J>N THEN     S:=S-VAR1[J-N];   MA1[J]:S/N;        //实现MA(C,N)   I:=0;  END; END; 
  请教一下里面的   S:=S-VAR1[J-N];   MA1[J]:S/N;     这两句代表什么意思啊? 
 | 
    
      | --  作者:FireScript --  发布时间:2020/2/12 10:10:42
 --
 S:=S-VAR1[J-N];
 
 比如你算五日均线。当你当前是第六个K线时候。那么就得用 2-6 这几个K去计算。 而此时s累加的是1-6个K。这样就必须要把第一个K剔除掉。S:=S-VAR1[J-N];  就是这个意思。 后续也是类似的过程,增添新K,必须去除最开始位置的一个K。 
   MA1[J]:S/N;  这个是计算均值,S是前面累加了五个K,N是定值5。 赋值给MA1[j]  是表示把计算出来的值赋给第K个位置的ma1 变量。 这样就维护了没个K位置的计算结果。 
 | 
    
      | --  作者:wenarm --  发布时间:2020/2/12 10:11:39
 --
 
 你不用管序列模式。图表交易只能是逐k线运行模式。   你把序列模式当成技术指标才能用的模式就行了。不就纠结这个模式。   注释中已经说得很明确了。就是求平均值。     
 | 
    
      | --  作者:FireScript --  发布时间:2020/2/12 10:21:10
 --
 现在大部分模型编写 尤其目前的图表交易模型   都是需要  在逐K模式上+勾选仅刷最后一个K。序列模式应用的场景相对不是那么多了。
 
 | 
    
      | --  作者:OscarDeng --  发布时间:2020/2/12 15:05:11
 --
 也就是说现在我们基本都是用逐K线模式,在逐K线模式下, 数组就很少用了,对吗?
 
 | 
    
      | --  作者:wenarm --  发布时间:2020/2/12 15:09:56
 --
 
 除非特殊需要,否者根本用不到数组。 
 | 
    
      | --  作者:OscarDeng --  发布时间:2020/2/18 17:45:40
 --
 那如果在程序代码没有写runmode的话, 默认就是K线走完模式?
 
 | 
    
      | --  作者:wenarm --  发布时间:2020/2/18 20:07:59
 --
 
 代码不指定。和你这里的选择有关。   
  此主题相关图片如下:8.png 
  
 
 |