新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1887

 
Vitaly Muzichenko #:

翻开它,但没有任何意义

它需要以另一种方式来填补

不起作用


 
Alexey Viktorov #:

是的,有一个常规的......添加到数组并从数组中删除。该阵列必须是动态的。在文档中寻找更多的细节,我不记得它们是怎么写的...

(可能有人记得?))

 
Andrey Sokolov #:

(谁能记得?))

关于数组的东西

 
Vitaly Muzichenko #:

关于数组的东西

👍

 
Vitaly Muzichenko #:

关于数组的东西

看了一下关于速度的历史剖析

void Shift()
{
        for(int i=Bars(NULL, 0)-bars; i>0; i--)
        {
                ArrayInsert(arr, arr_sourse, 0);
        }
}

и

bool Shift()
{
        if(ArrayResize(arr, Bars(NULL, 0), Bars(NULL, 0)-bars+1000)<0) return false;
        for(int i=ArraySize(arr)-1; i>0; i--)
        {
                arr[i]=arr[i-1];
        }
        ArrayFill(arr, 0, Bars(NULL, 0)-bars, 0);
        return true;
}

运行成本是完全一样的。

按照我的理解,ArrayInsert的引擎盖下就是这样的。

 
下午
你能告诉我,在mt4中是否有处理数据库 的库?
 

问候。你能告诉我吗?

我试图把指标放到EA中,在测试/调试过程中,它在所有的ticks上工作,数据匹配。在测试开盘价时,数据经常出现分歧,当试图在调试器中找出原因时,出现了一个问题--对于EA来说,OnTick()在每个蜡烛上被调用一次,而对于指标来说,OnCalculate()被调用多次,一次在蜡烛的开始,几次在蜡烛的结束,因此变量中的数据发生了变化。一般来说,我需要一些帮助。


ozymandias_03指标

附加的文件:
ozy_00.mq5  13 kb
 
Andrey Sokolov #:

问候。你能告诉我吗?

我试图把指标放到EA中,在测试/调试过程中,它在所有的ticks上工作,数据匹配。在测试开盘价时,数据经常出现分歧,当试图在调试器中找出原因时,出现了一个问题--对于EA来说,OnTick()在每个蜡烛上被调用一次,而对于指标来说,OnCalculate()被调用多次,一次在蜡烛的开始,几次在蜡烛的结束,因此变量中的数据发生了变化。一般来说,我需要一些帮助。


ozymandias_03指标

在蜡烛的开口处为指标添加数据计算。
 

大家下午好。我有一个指标,可以画出斐波那契水平。我需要该EA在价格达到该Fibo网格的61.8水平时,在该图表上放置另一个具有特定设置的EA,并按下按钮打开订单。

下面是指标和EA及其按钮的屏幕截图。

斐波那契绘制的指标

指标所画的斐波那契。


EA按钮

应点击左侧的专家顾问按钮,打开


这件事真的完成了吗?如果是这样,如何用文字实现,然后用代码实现? 请尽可能详细和清楚地解释。

 
DanilaMactep #:

大家下午好。我有一个指标,可以画出斐波那契水平。我需要该EA在价格达到该Fibo网格的61.8水平时,在该图表上放置另一个具有特定设置的EA,并按下按钮打开订单。

下面是指标和EA及其按钮的屏幕截图。

指标所画的斐波那契。


应点击左侧的专家顾问按钮,打开


这件事真的完成了吗?如果是这样,如何在文字中实现,然后在代码中实现? 请详细解释,让人理解。

另一个EA应该放在第一个EA中。 在第一个EA中,计算水平,第二个EA的代码在达到该水平时开始工作。当第二个开始时,你必须规定你要按的按钮的状态。

原因: