以文本方式查看主题

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

--  作者:shangxianglu
--  发布时间:2017/6/7 16:15:54
--  For 循环中数组赋值问题??

 请问下面的for循环中,数组赋值正确吗?

程序逐K线运行,每跟K线都从左向右计算一遍,并把计算结果赋值给数组Buffer[i],那么赋值后的数组Buffer[]能否被引用?还有想把数组的结果数值通过在副图指标窗口绘图的形式绘制出来,可以吗?如何绘制????

 

 


runmode:0;

Value1:=0;


Fish1:=0;

  
PPeriod:=10;

VARIABLE:MMax[]=0;

VARIABLE:MMin[]=0;

AA:=HHV(HIGH,PPeriod);
MMax:=AA;           
MMAAXX:MMax[DATACOUNT],NODRAW;   
                      
AAA:=LLV(LOW,PPeriod);
MMin:=AAA;
MMIILL:MMin[DATACOUNT],NODRAW;


MM:=DATACOUNT;
VARIABLE:Buffer[MM]=0.0;//被赋值的数组

 


   For i=DATACOUNT downto 1 DO //DATACOUNT
   BEGIN

     PRICE:(HIGH[i]+LOW[i])/2,NODRAW;
   
     Value:2.0*(PRICE/(MMax[i]-MMin[i])-0.3),NODRAW;    
  
     fc:=0.5*Value+0.7*Value1,NODRAW;
   
     FFCC:fc,NODRAW;
     Value1=Value,NODRAW;
    
//////////////////////////////////////??如何把fc的值赋值到数组Buffer[]中,并可以被引用??///////////////////////////////////
     //Buffer:=fc,NODRAW;  
     Buffer[i]:=fc,NODRAW;
//////////////////////////////////////??如何把fc的值赋值到数组Buffer[]中,并可以被引用??///////////////////////////////////   

    END
 


--  作者:yukizzc
--  发布时间:2017/6/7 16:41:32
--  

引用没法引用

输出的话,直接

 

VARIABLE:Buffer[]=0;

shuchu:Buffer


--  作者:shangxianglu
--  发布时间:2017/6/7 17:05:08
--  

不能通过下面的循环语句绘图输出吗?

for i=1 to datacount

then begin

 

QQQ=Buffer[i];

stickline(XXXX);

 

end


--  作者:yukizzc
--  发布时间:2017/6/7 17:29:19
--  

每根k线一个数值,没必要数组

qq:=barpos;

stickline(qq);

普通变量本事就是有数组概念在内的

数组是在一根k内进行重复计算最后得出一个结果的使用


--  作者:shangxianglu
--  发布时间:2017/6/7 21:50:21
--  
请教一下,金字塔如何实现从右向左,每根K线,计算啊?
--  作者:shangxianglu
--  发布时间:2017/6/7 23:22:51
--  
金字塔正常情况下,加载公式后,是从左向右逐K线计算的;
请教一下,金字塔如何实现从右向左逐K线计算啊?


--  作者:shangxianglu
--  发布时间:2017/6/7 23:35:21
--  
CURRBARSCOUNT,请问用这个可以实现逆向从右向左运算吗?
--  作者:wenarm
--  发布时间:2017/6/8 8:11:55
--  

不能这个只是k线的逆序数量函数


--  作者:yukizzc
--  发布时间:2017/6/8 8:48:03
--  

for i = barpos to 1 do

begin

 

if high[i]>high[barpos] then

  num:=i;

end

 

end

 


--  作者:shangxianglu
--  发布时间:2017/6/8 9:34:22
--  

//////////////////////////////////////??如何把fc的值赋值到数组Buffer[]中,并可以被引用??///////////////////////////////////
     //Buffer:=fc,NODRAW;  
     Buffer[i]:=fc,NODRAW;
//////////////////////////////////////??如何把fc的值赋值到数组Buffer[]中,并可以被引用??///////////////////////////////////   

上面公式中,此部分数组赋值正确吗?

如何像MACD指标一样,把计算结果fc在副图窗口通过绘图表示出来?

能把上面的公式编译后,补充完整吗?

不胜感激额。图片点击可在新窗口打开查看