void CalculateGeometricalMA(int rates_total,int prev_calculated,int begin,const double &price[]) { int i,limit; //--- first calculation or number of bars was changed double powr=1/(double)InpMAPeriod; if(prev_calculated==0)// first calculation { limit=InpMAPeriod+begin; //--- set empty value for first limit bars for(i=0;i<limit-1;i++) gma[i]=1.0; //--- calculate first visible value double firstValue=1;
void CalculateGeometricalMA(int rates_total,int prev_calculated,int begin,const double &price[]) { int i,limit; //--- first calculation or number of bars was changed double powr=1/(double)InpMAPeriod; if(prev_calculated==0)// first calculation { limit=InpMAPeriod+begin; //--- set empty value for first limit bars for(i=0;i<limit-1;i++) gma[i]=1.0; //--- calculate first visible value double firstValue=1;
我在此附上所要求的指标。
它是基于带有指标实例的文件夹中的自定义移动平均线。
SMA计算功能没有变化。
GMA是在一个单独的函数中计算的。
最后,我们计算出他们的差异。
我在此附上所要求的指标。
它是基于带有指标实例的文件夹中的自定义移动平均线。
SMA计算功能没有变化。
GMA是在一个单独的函数中计算的。
最后,我们计算出他们的差异。
我在此附上所要求的指标。
它是基于带有指标实例的文件夹中的自定义移动平均线。
SMA的计算功能没有改变。
GMA是在一个单独的函数中计算的。
最后,我们计算出他们的差异。
谢谢你!你可以从上图中看到,该指标正在履行其功能。或者说不是吗?我仍然需要做很多工作来更好地理解它。
问题:使用的是什么时期?
看不到任何东西,除了你能看到的没有指标的东西。
M1时期。它写在左角)。
我没有看到任何东西,除了你可以看到没有指标的东西。
谢谢你!从上图中,你可以看到该指标正在履行其功能。或者说是吗?
顺便说一下,请检查一下GMA的计数是否正确?
void CalculateGeometricalMA(int rates_total,int prev_calculated,int begin,const double &price[])
{
int i,limit;
//--- first calculation or number of bars was changed
double powr=1/(double)InpMAPeriod;
if(prev_calculated==0)// first calculation
{
limit=InpMAPeriod+begin;
//--- set empty value for first limit bars
for(i=0;i<limit-1;i++) gma[i]=1.0;
//--- calculate first visible value
double firstValue=1;
for(i=begin;i<limit;i++)
firstValue*=price[i];
firstValue=MathPow(firstValue, powr);
gma[limit-1]=firstValue;
}
else limit=prev_calculated-1;
//--- main loop
for(i=limit;i<rates_total && !IsStopped();i++){
gma[i]=gma[i-1] * (MathPow(price[i], powr) / MathPow(price[i-InpMAPeriod], powr));
}
//---
}
看不到任何东西,除了你能看到的没有指标的东西。
M1时期。它写在左角)。
因为,你不希望看到。我看到,该指标毫不含糊地预测了下跌,甚至比价格实际下跌的时间还要早(在上升)。
是吗?
甚至又看了一遍。
Zy 来自MA的衍生物也会给出同样的东西。甚至还预测了方向)。
该指标计算的是公式中给出的内容。但是解释结果是一项更困难的任务。
顺便说一下,请检查GMA是否正确?
void CalculateGeometricalMA(int rates_total,int prev_calculated,int begin,const double &price[])
{
int i,limit;
//--- first calculation or number of bars was changed
double powr=1/(double)InpMAPeriod;
if(prev_calculated==0)// first calculation
{
limit=InpMAPeriod+begin;
//--- set empty value for first limit bars
for(i=0;i<limit-1;i++) gma[i]=1.0;
//--- calculate first visible value
double firstValue=1;
for(i=begin;i<limit;i++)
firstValue*=price[i];
firstValue=MathPow(firstValue, powr);
gma[limit-1]=firstValue;
}
else limit=prev_calculated-1;
//--- main loop
for(i=limit;i<rates_total && !IsStopped();i++){
gma[i]=gma[i-1] * (MathPow(price[i], powr) / MathPow(price[i-InpMAPeriod], powr));
}
//---
}