iCustom(NULL,0, "SOLAR WIND",10,1,0);
iCustom(NULL,0, "SOLAR WIND",10,2,0)。
这就是你在寻找的东西吗?
iCustom(Symbol(), 0, "Sollar Wind", ..., int mode(Indicator Line Index), int shift)
在指标名称之后 - "Sollar Wind" - 填充你的Extern变量
但是
是的,但根据我第一条信息中的指标编程,我需要的数据的变量在哪里?
谢谢,再次感谢
例子
你能给我指出一个实际的例子,如何写icustom来获得顶部提到的指标的最后值?
谢谢
有谁为这个指标开发了完整的EA吗。 如果有,你能和我们分享编码吗? 它看起来并不像一个复杂的EA - 一个简单的从负数到正数的交叉,反之亦然。
戴夫<<
你的新版本的太阳风也会自己重新绘制! 在5分钟内拍一张屏幕快照,然后在1小时或2小时后再拍一张! 有其他解决重绘问题的办法吗? 如果可能的话,我真的希望能解决这个问题。
戴夫<<
我想用这个指标做一个EA,但我不知道如何写函数 icustom?
谢谢!
#属性 indicator_separate_window
#属性 indicator_buffers 3
#属性 indicator_color1 黑色
#属性 indicator_color2 Lime
#属性 indicator_color3 红色
Extern int period=10;
double ExtBuffer0[];
double ExtBuffer1[];
双倍ExtBuffer2[]。
int init()
{
SetIndexStyle(0,DRAW_NONE);
SetIndexStyle(1,DRAW_HISTOGRAM);
SetIndexStyle(2,DRAW_HISTOGRAM);
IndicatorDigits(Digits+1);
SetIndexBuffer(0,ExtBuffer0);
SetIndexBuffer(1,ExtBuffer1);
SetIndexBuffer(2,ExtBuffer2)。
IndicatorShortName("SOLAR WIND")。
SetIndexLabel(1,NULL);
SetIndexLabel(2,NULL)。
返回(0)。
}
int start()
{
//int period=10。
int limit;
int counted_bars=IndicatorCounted()。
double prev,current,old;
double Value=0,Value1=0,Value2=0,Fish=0,Fish1=0,Fish2=0;
双重价格。
double MinL=0;
double MaxH=0。
如果(counted_bars>0) counted_bars--。
limit=Bars-counted_bars;
for(int i=0; i<limit; i++)
{ MaxH = High;
MinL = Low[Lowest(NULL,0,MODE_LOW,period,i)] 。
价格=(High+Low)/2。
Value = 0.33*2*((price-MinL)/(MaxH-MinL)-0.5) + 0.67*Value1;
Value=MathMin(MathMax(Value,-0.999),0.999)。
ExtBuffer0=0.5*MathLog((1+Value)/(1-Value))+0.5*Fish1。
Value1=Value。
Fish1=ExtBuffer0;
}
bool up=true。
for(i=limit-2; i>=0; i--)
{
current=ExtBuffer0;
prev=ExtBuffer0;
如果((current0))|(current<0))up= false。
如果((current>0)&&(prev0))up= true。
如果(!up)
{
ExtBuffer2=current;
ExtBuffer1=0.0。
}
否则
{
ExtBuffer1=current;
ExtBuffer2=0.0。
}
}
return(0);
}