[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要路过。没有你就无处可去 - 3. - 页 16

 

对代码的帮助。我们有一个图表,上面有一个带缓冲区的指标和一条 移向过去的垂直线

如何从指标缓冲区读取从垂直线所在的条形图到图表末端(零条)的数值?

我是这样写的。

tm=ObjectGet("VerticalLine",0);
for(x=iBarShift(Symbol(),0,tm);x==0; x--)
{
Print(x);
Print(Buffer[x])

}

它不起作用,根本就没有任何输出。帮助

 
ZZZEROXXX:

我是这样写的。

tm=ObjectGet("VerticalLine",tm)。
for(x=iBarShift(Symbol(),0,tm);x==0;x--)
{
打印(x)。
Print(Buffer[x];

}

问题一定出在这一行:tm=ObjectGet("VerticalLine",tm)。

阅读帮助,它需要类似于:tm=ObjectGet("VerticalLine",OBJPROP_TIME1)。


 
IgorM:

问题肯定出在行上:tm=ObjectGet("VerticalLine",tm)。



对不起,我搞砸了,我是用手写的,在原来的tm=ObjectGet(" VerticalLine",0);所以有些东西不工作了。

 
ZZZEROXXX:


对不起,我搞砸了,我是用手写的,在原来的tm=ObjectGet(" VerticalLine",0); 所以有些东西不工作了

if(ObjectFind("VerticalLine")!=-1){
    datetime TimeVL=ObjectGet( "VerticalLine", OBJPROP_TIME1); //получили координату времени где стоит вертикальная тиния с именем VerticalLine , которая сознательно  выставлена - так как не проверяется какая это линия и тд 
    int shift=iBarShift(NULL, 0, TimeVL); //получил смещение линииот текущего момента в свечах 
    
    //int c=Bars- shift; //если вдруг хочется до конца истории вывести значение индикатора (после линии)

    int c=10; // а это на скольких свечах после вертикальной линии анализировать значение индикатора
    for(int i=shift; i<=shift+c; i++){
     //double x=iCustom(NULL, 0, "СвойИндикатор", ..., int mode, i); // тут вроде как свой индикатор ....
     double x= iMA(NULL, 0, 12, 0, MODE_SMA, PRICE_CLOSE, i) ; // для примера вывод МА
     Print("x=",i," MA=",x);
    }
   }
   else Print("Нет Вертикальной линии");

- 小心--代码将逐点工作--你将得到大量的分析数据:)在每个点上都 会重新执行代码。

也就是说,如果我没有理解错的话,你想要什么?

 
在MQL中,是否可以对指标颜色进行绑定?即当指标颜色或指标点发生变化时,就会有一个仓位被打开
 
vilard:
在MQL中,是否可以对指标颜色进行绑定?即当指标颜色或指标点发生变化时,就会有一个仓位被打开。
 
rustein:

如何实现这一点,如果可能的话,请提供一个简单的例子或代码链接。
 
vilard:

如何实现这一点,如果可能的话,请提供一个简单的例子或代码链接。

https://www.mql5.com/ru/search?keyword=iCustom

https://www.mql5.com/ru/code/9235

 

大家好!

我想请一位知识渊博的人告诉我MQL4中的库是什么,以及用什么来使用它们。预先感谢你。