Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1426

 
MrBrooklin #:

Вот теперь всё понятно.

С уважением, Владимир.

MrBrooklin #:

Вот теперь всё понятно.

С уважением, Владимир.

vitaliy zamkovoy #:
Я там обновил сообщения. Перечитайте, пожалуйста.
Алексей Викторов хоть и сноб, но просёк фишку сразу. 😆
 
vitaliy zamkovoy #:
В понятие "сравнение с константой " я вкладываю не равенство, а "больше" "меньше". При положительной разнице сравниваем с константой со знаком +, а при отрицательной разнице сравниваем с константой со знаком " - ". Если в первом случае превышаем константу ,- покупка. Во втором случае, если значение меньше - продажа.

Вот теперь вообще всё стало понятно.

С уважением, Владимир.

P.S. Единственное, что могу порекомендовать, так это ради интереса посмотреть мое сообщение здесь.  И потом посмотрите, как вела себя цена после этого сообщения. Она откатилась в район 0.98000, а если точнее, то к 0.9806, а затем снова пошла вверх, как и показано красной стрелкой на скриншоте ценового графика. Эта рекомендация Вам просто для размышления.

 
vitaliy zamkovoy #:
Алексей Викторов хоть и сноб, но просёк фишку сразу. 😆

Виталий, Вы не знаете человека, а уже пытаетесь судить о нём. Это очень некорректно с Вашей стороны. У каждого человека есть свои принципы. Всё, точка!

С уважением, Владимир.

 
vitaliy zamkovoy #:

Не правильно описываете задачу! Не "один раз в 20 секунд", а ежесекундно сверяться с прошедшими какое-то время назад показателями. Что касается "зачем" - это вопрос не для данной дискуссии. (А 20 секунд - просто как пример).

Это как скользящая средняя, где первая свеча сравнивается со второй. Только у меня все должно рассчитываться внутри текущей (нулевой) минутной свечи.(А ещё лучше - на линейном графике. Ведь 20 секунд могут перетечь на первую свечу).

Это Вы неправильно, т.е. не точно описали свой алгоритм, и это следует из того, что его не поняли все однозначно. Один понял так, оказалось не правильно, другой по другому, оказалось по вашему правильно. Это следствие не точного и не однозначного описания алгоритма. Кстати в 4ке такой код, с копированием тиков не пройдет. 4ка тики не запоминает, их нужно запоминать самому.)))

 
Alexey Viktorov #:

Как-же мне уже надоело читать всю эту ахинею… Ведь кода всего ЧЕТЫРЕ СТРОКИ, а обсуждений 3 страницы.

20000 миллисекунд — это 20 секунд.

Дальше ставьте условие на размер переменной delta больше\меньше, влево\вправо или север\йух…

Жестокий код) На каждом тике копировать)))

 
Valeriy Yastremskiy #:

в 4ке такой код, с копированием тиков не пройдет.

Прочтите название темы.

 
Alexey Viktorov #:

Прочтите название темы.

))) не поспоришь)

[Удален]  

Всем привет, пишу код проверки открытых позиций в советнике


#include <Trade\PositionInfo.mqh>

#include <Trade\Trade.mqh>

#include <Trade\SymbolInfo.mqh>

#include <Trade\AccountInfo.mqh>

#include <Trade\DealInfo.mqh>

#include <Trade\OrderInfo.mqh>

CPositionInfo  m_position;                   // trade position object

CTrade         m_trade;                      // trading object

CSymbolInfo    m_symbol;                     // symbol info object

CAccountInfo   m_account;                    // account info wrapper

CDealInfo      m_deal;                       // deals object

COrderInfo     m_order;                      // pending orders object



//+------------------------------------------------------------------+

//|                                                                  |

//+------------------------------------------------------------------+

bool ExistBuy(long magic_number)

{

   for (int i = PositionsTotal() - 1; i >= 0; i--)

   {

      if (m_position.SelectByIndex(i))

      {

         if (m_position.PositionType() == POSITION_TYPE_BUY && m_position.Magic() == magic_number && m_position.Symbol() == Symbol())

         {

            return (true);

         }

      }

   }

   return (false);

}



такой же есть и для sell позиций. Всё работает. Но есть один брокер (возможно есть чуть больше) он на реальном счету может открыть дубликаты позиций несмотря на проверку. Притом он делает это не всегда. Т.е. ошибка (открытие дубликата позиции) не ловится в тестере - там всё ок, на реале ловится, но не всегда. 


Что происходит? Почему так?

 
jcinvestorYury #:

Всем привет, пишу код проверки открытых позиций в советнике


такой же есть и для sell позиций. Всё работает. Но есть один брокер (возможно есть чуть больше) он на реальном счету может открыть дубликаты позиций несмотря на проверку. Притом он делает это не всегда. Т.е. ошибка (открытие дубликата позиции) не ловится в тестере - там всё ок, на реале ловится, но не всегда. 


Что происходит? Почему так?

Здравствуйте! А какие у Вас условия для открытия длинной и/или короткой позиции? Там Вы проверяете, что уже есть одна открытая позиция BUY и/или SELL?

С уважением, Владимир.

 
MrBrooklin #:

Здравствуйте! А какие у Вас условия для открытия длинной и/или короткой позиции? Там Вы проверяете, что уже есть одна открытая позиция BUY и/или SELL?

С уважением, Владимир.

Это показательный код, «Как писать нельзя» …