请问: 任意品种、周期加载1000个bar,然后在 第898 899 900的位置,用 plot.line 画三次线段,在901的位置如何用 plot.clear 删除掉这三个线段?
谢谢!
代码如下:这样写只能删掉898的位置画的线段,后面899 900两次还是会保留。
Params
Numeric FastLength(5);// 短期指数平均线参数
Numeric SlowLength(20);// 长期指数平均线参数
Vars
Series<Numeric> AvgValue1;
Series<Numeric> AvgValue2;
Plot plt;
Array<Numeric> x1Data;//x轴数据集
Array<Numeric> y1Data;//y轴数据集
Events
OnBar(ArrayRef<Integer> indexs)
{
AvgValue1 = AverageFC(Close,FastLength);
AvgValue2 = AverageFC(Close,SlowLength);
//plt.line(\"MA1\",AvgValue1);
//plt.line(\"MA2\",AvgValue2);
Commentary(text(CurrentBar));
if(currentbar ==900)
{
Numeric i;
For i=0 To 20
{
x1Data[i]= Date[i]+Time[i];
y1Data[i]= AvgValue2[i]*1.01;
}
plt.line(\"vex0\",x1Data,y1Data);
}
if(currentbar ==898)
{
Numeric i;
For i=0 To 20
{
x1Data[i]= Date[i]+Time[i];
y1Data[i]= AvgValue2[i]*1.007;
}
plt.line(\"vex\",x1Data,y1Data);
}
if(currentbar ==899)
{
Numeric i;
For i=0 To 20
{
x1Data[i]= Date[i]+Time[i];
y1Data[i]= AvgValue2[i]*1.007;
}
plt.line(\"vex\",x1Data,y1Data);
}
if(currentbar ==900)
{
Numeric i;
For i=0 To 20
{
x1Data[i]= Date[i]+Time[i];
y1Data[i]= AvgValue2[i]*1.007;
}
plt.line(\"vex\",x1Data,y1Data);
}
if(currentbar == 901)
{
plt.clear(\"vex\");
}
}