自定义符号。误差、错误、问题、建议。 - 页 7

 
Sergey Chalyshev:

在市场概览中添加了一个符号 滴答声已经恢复正常。

事实证明,有一个解决方案。

但是酒吧仍然没有出现。

所以要写好条子。

 
fxsaber:

事实证明,有一个解决方案。

所以,写吧。

在MT5中没有解决方案,我已经尝试了所有的方法。

我正在写条形图,它没有给我任何错误,但我也没有写条形图。

虽然,他们应该组建自己的酒吧。

 

这是书写刻度线和形成柱状的符号,尽管它甚至没有被添加到市场概览中。

而对于这个人来说,没有柱状物,而且刻度线是歪的。

脚本是一样的,算法也是一样的,但符号名称却不同。

我看到符号名称中有一个错误的字母。

我怎么知道哪个字母是 "错误的"?

 
Sergey Chalyshev:

你如何发现哪个字母是 "错误 "的?

去看看吧。如果我想弄清楚,我就会提供源代码。这似乎是一个不同的案例。

 
fxsaber:

Bug 07.

测试仪通过最后一个股票自定义符号与买入价来生成条形图。

相应地,终端和测试器中的酒吧历史也完全不同。而如果有人在TS中使用条形图(比如说指标),回测的结果对他/她来说是随机的。

在策略测试器中的奇怪的条形图上继续。

Bug 08.

在MQ-Beta EURUSD上运行此脚本

关于交易、自动交易系统和策略测试的论坛

图书馆: 符号

fxsaber, 2018.07.09 14:20

// Включаем в бэктест текущий день
#property script_show_inputs

#include <Symbol.mqh> // https://www.mql5.com/ru/code/18855

input int Offset = -24 * 7; // Offset in hours

#define  HOUR 3600

void OnStart()
{
  const SYMBOL Symb(_Symbol + "_Offset" + (string)Offset); // Создали символ

  if (Symb.IsExist()) // Если символ создан
  {
    Symb.CloneProperties(); // Скопировали свойства
    
    MqlRates Rates[];

    // Сместили время баров
    for (int i = CopyRates(_Symbol, PERIOD_M1, 0, (int)SeriesInfoInteger(_Symbol, PERIOD_M1, SERIES_BARS_COUNT), Rates) - 1; i >= 0; i--)
      Rates[i].time += Offset * HOUR;
      
//    Symb.CloneTicks(Ticks);

    // Записали смещенные бары и включили символ в Обзор рынка
    if ((Symb.CloneRates(Rates) > 0) && Symb.On())
      ChartOpen(Symb.Name, PERIOD_CURRENT); // Открыли график нового символа
  }
}

然后在测试器的OHLC M1模式下,通过创建的自定义符号来追逐可视化。你可以很清楚地看到,这些条形图与终端中的条形图非常不同。


终端



测试员


 
fxsaber:

继续讨论测试器中的怪异条状物问题。

Bug 08.

在MQ-Beta EURUSD上运行此脚本


然后我们在策略测试器中使用创建的自定义符号在OHLC M1模式下运行可视化。可以清楚地看到,酒吧与终端的酒吧有很大不同。


终端



测试员


尝试从自定义符号 的名称中删除"-"符号。

帮助中没有说到"-"。

(允许"."、"_"、"&"和 "#")。

但是报价服务器不喜欢减号和点号。

 
Bild 2025 - 我没有注意到任何变化。
 
你好,自定义符号 有一个问题。
简而言之,我在MT5中创建了自己的符号,例如EURUSD,我从Tick Data Suite程序中获取了一个CSV文件(基本历史),其中包含了tick数据。当我把符号添加到MT5并开始测试时,我看到图表上显示的条形图不正确,但刻度线变得正常。我知道问题出在CSV文件本身,那里没有酒吧的数据。因此,看起来我们需要一个脚本来解决这个问题!
 
 
该CSV文件看起来像这样