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

 
请帮助,你需要添加顾问的时间。谁可以帮助,写在个人。作为感谢,我会分享我的想法。
 
Sergei Boriskov:
请帮助我们,我们需要为专家顾问添加时间,谁能提供帮助, 当面与我联系,作为感谢,我将分享我的想法
这个论坛是用于公开讨论的。
 
请帮助我,我需要给顾问添加一个时间。
附加的文件:
qwer.mq4  14 kb
 
Sergei Boriskov:
请帮助我,我需要在我的EA中添加运行时间。

试试这个脚本,为你的EA拉出一些有用的功能。

//+----------------------------------------------------------------------------+
//|                                                test_isTradeTimeString.mq4  |
//|                                                                            |
//|                                                    Ким Игорь В. aka KimIV  |
//|                                                       http://www.kimiv.ru  |
//|                                                                            |
//|  29.04.2009  Скрипт для тестирования функции isTradeTimeString().          |
//+----------------------------------------------------------------------------+
#property copyright "Ким Игорь В. aka KimIV"
#property link  "http://www.kimiv.ru"


void OnStart() {
//1. Временной отрезок внутри суток.
//Текущее время торгового сервера внутри отрезка и пусть оно равно "07:50".
//  if (isTradeTimeString("06:00", "09:30")) Message("Торгуем...");
//  else Message("Отдыхаем...");

//2. Временной отрезок внутри суток.
//Текущее время торгового сервера вне отрезка и пусть оно равно "07:50".
  if (isTradeTimeString("12:00", "16:30")) Message("Торгуем...");
  else Message("Отдыхаем...");

//3. Временной отрезок включает границу суток.
//Текущее время торгового сервера внутри отрезка и пусть оно равно "07:50".
  //if (isTradeTimeString("20:15", "09:30")) Message("Торгуем...");
  //else Message("Отдыхаем...");

//4. Временной отрезок включает границу суток.
//Текущее время торгового сервера вне отрезка и пусть оно равно "07:50".
//  if (isTradeTimeString("8:00", "18:30")) Message("Торгуем...");
 // else Message("Отдыхаем...");
}

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 29.04.2009                                                     |
//|  Описание : Возвращает флаг разрешения торговли по времени.                |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    TimeBegin - время начала торговли         (ЧЧ:ММ)                       |
//|    TimeEnd   - время окончания торговли      (ЧЧ:ММ)                       |
//+----------------------------------------------------------------------------+
bool isTradeTimeString(string TimeBegin="00:00", string TimeEnd="00:00") {
  datetime dtBegin, dtEnd;        // Время начала и окончания работы
  int      hc, he;                // Часы текущего времени и окончания работы

  dtBegin=StringToTime( TimeToString(TimeCurrent(), TIME_DATE)+" "+TimeBegin);
  dtEnd  =StringToTime( TimeToString(TimeCurrent(), TIME_DATE)+" "+TimeEnd);
  hc     =TimeHour(TimeCurrent());
  he     =TimeHour(dtEnd);
  if (dtBegin>=dtEnd) {
    if (hc>=he) dtEnd+=24*60*60; else dtBegin-=24*60*60;
  }

  if (TimeCurrent()>=dtBegin && TimeCurrent()<=dtEnd) return(true);
  else return(false);
}

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 01.09.2005                                                     |
//|  Описание : Вывод сообщения в коммент и в журнал                           |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    m - текст сообщения                                                     |
//+----------------------------------------------------------------------------+
void Message(string m) {
  Alert(m);
  if (StringLen(m)>0) Alert(m);
}
//+----------------------------------------------------------------------------+

 
Sergei Boriskov:
请帮助我,我需要向专家顾问添加时间。
你是否尝试过自己做一些事情?还是你想让我们为你做这件事?
这是一个培训主题。如果你不能 - 我们会帮助,我们会教,但我们会为你做一切...
 
Alekseu Fedotov:

试试这个脚本,为你的EA拉出一些有用的功能。

谢谢你

 
Vitaly Muzichenko:

好吧,你可以从每一个代码中得到一些有用的东西,有时甚至是非凡的东西。

Codebase正是为了这个目的而设计的,而不是为了两个人用它做什么。

P.S. 我有个好主意,我需要重写结构数组,不知为何以前根本没有想到。

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

这个代码库正是为了这个目的而创建的,并被设计为做两个人用它做的事情。

ArrayZigZag
ArrayZigZag
  • www.mql5.com
При создании объекта в его конструктор необходимо передать в качестве параметров: 3. Использовать экземпляр объекта  ZigZag как обычный массив структур. Доступны для чтения следующие поля: Свойство Тип Описание 4. Публичным доступны два метода:  ZigZag.Update(void) - обновление значений индикатора ZigZag , можно использовать как на каждом...
 
Igor Makanu:

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

研究它,或编辑持有数据的类以适应你的需要,在我的例子中,它是CZigZagPeak,动态列表是很酷的!

谢谢你,我晚上会看一看!

 

下午好。

请在代码方面提供帮助,因为我自己不是一个程序员 :(

我需要一部分代码来计算订单之间的距离。

块的本质。

每周一次,在周一交易时段 开始时运行。

前一个月的历史数据已经加载。(D1)(如何确定最近一个月或只计算30天)

考虑到每根蜡烛在D1上的阴影,所有的蜡烛尺寸都被记录下来,并计算出一个月内蜡烛的平均尺寸。

同时,我们还计算出过去一周的蜡烛图尺寸的平均值。

然后计算出该月和该周之间的平均值并除以N部分。这将是订单之间的距离。

 
Alexander Layzerevich:

下午好。

请在代码方面提供帮助,因为我自己不是一个程序员 :(

我需要一部分代码来计算订单之间的距离。

块的本质。

每周一次,在周一交易时段 开始时运行。

前一个月的历史数据已经加载。(D1)

考虑到D1上每根蜡烛的阴影,所有尺寸都被记录下来,并计算出当月蜡烛尺寸的平均值。

同时,还计算出最近一周的蜡烛图尺寸的平均值。

然后计算出该月和该周之间的平均值并除以N部分。这将是订单之间的距离。

使用ATR指标

原因: