查过代码没错,问题出在哪呢,没试过这样
底层问题,一般是数组越界或者和底层c语言规则冲突导致的。
这个得分析全部代码才能找到问题在哪里了
DK_up=CrossOver(MAMA[1],FAMA[1]);
KK_dn=CrossUnder(MAMA[1],FAMA[1]);
if(DK_up[1]) //前一根BAR线获得金叉时的BAR线索引号
{
Curbar_H=CurrentBar;
}
if(KK_dn[1]) //前一根BAR线获得死叉时的BAR线索引号
Curbar_L=CurrentBar;
Highup=Highest(H[1],Max(curbar_H-curbar_L,M)); //区间的周期数最小阀值限制,最小为M
Lowdown=Lowest(L[1].Max(curbar_L-curbar_H,M)); //区间的周期数最小阀值限制,最小为M
if(DK_up[1]) //前一根BAR线金叉时保存highup到HD
HD=Highup;
if(KK_dn[1]) //前一根BAR线死叉保存lowdown到LD
LD=Lowdown;
if(DK_up[2]) //前二根BAR线金叉时K值为1:
K=1;
if(KK_dn[2]) //前二根BAR线死叉时K值为-1:
K=-1;
这一段删了就没有错误,,,这一段有问题吗
底层问题,一般是数组越界或者和底层c语言规则冲突导致的。
这个得分析全部代码才能找到问题在哪里了
DK_up=CrossOver(MAMA[1],FAMA[1]);
KK_dn=CrossUnder(MAMA[1],FAMA[1]);
if(DK_up[1]) //前一根BAR线获得金叉时的BAR线索引号
{
Curbar_H=CurrentBar;
}
if(KK_dn[1]) //前一根BAR线获得死叉时的BAR线索引号
{
Curbar_L=CurrentBar;
}
Highup=Highest(H[1],Max(curbar_H-curbar_L,M)); //区间的周期数最小阀值限制,最小为M
Lowdown=Lowest(L[1].Max(curbar_L-curbar_H,M)); //区间的周期数最小阀值限制,最小为M
if(DK_up[1]) //前一根BAR线金叉时保存highup到HD
{
HD=Highup;
}
if(KK_dn[1]) //前一根BAR线死叉保存lowdown到LD
{
LD=Lowdown;
}
if(DK_up[2]) //前二根BAR线金叉时K值为1:
{
K=1;
}
if(KK_dn[2]) //前二根BAR线死叉时K值为-1:
{
K=-1;
}
这一段删了就没有错误,,,这一段有问题吗