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

 
MrBrooklin #:

Как говорил мой первый наставник по электронике (да, да, по электронике - ничего не путаю!), так вот, он говорил: ЧУДЕС НА СВЕТЕ НЕ БЫВАЕТ!!! )) К чему весь этот спич? Значит в какие-то моменты у Вас, просто на просто, выполнение программы не доходит до печати принтов. Ищите у себя в коде проблемы. И, да! Попробуйте освоить отладчик в метаэдиторе. Отличный инструмент для того, чтобы избавляться от чудес. ))

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

Про то, что в документации указано, что может печататься не все, я читал в другой ветке этого форума. Закладки не делал. Врядли найду. Писал человек опытный. Так что я Вас не обманываю.

У меня в коде робота раньше было несколько функций. И чтобы понимать, в какой функции сейчас программа, в голове функции размещал принт с текстом "Вошли в такую-то функцию". Внутри были принты с именами и значениями переменных на разных этапах и комментами. Открываю, бывало лог файл и вижу целую колонку с "Вошли в такую-то функцию". А ниже вдруг колонка изменяется на строки с именами и значениями переменных. А " вошли в функцию", типа уже не надо печатать. Или возникают ошибки, по которым прописаны принты. Ошибки есть. Принтов об ошибках нет. И так постоянно. Так что выборочность работы принтов определенно имеет место. Просто алгоритм не ясен. Сейчас, вроде, и код проще, а принты почти не работают.

Если можете посоветовать, где почитать про работу отладчика, буду благодарен.

Ну, и не по теме. Что чудес не бывает, говорят те, кто их не видел.

 
Roman Kutemov #:
Возможно их просто не видно во вкладке терминала. Откройте файл с логами и увидите принты. 

Как раз, как открыть вкладку терминала, в которой принты видно, я не знаю. И не заморачивался с информацией. Смотрю в самом лог файле, в папке MQL5.

 
maxvoronin74 #:

Как раз, как открыть вкладку терминала, в которой принты видно, я не знаю. И не заморачивался с информацией. Смотрю в самом лог файле, в папке MQL5.

На картинке показал вкладку, где нужно смотреть распечатку принтов.

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


 
MrBrooklin #:

На картинке показал вкладку, где нужно смотреть распечатку принтов.

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


Благодарю. Увидел. Там видно только за сегодня или можно настроить, чтобы были принты за другие дни?
 
maxvoronin74 #:
Благодарю. Увидел. Там видно только за сегодня или можно настроить, чтобы были принты за другие дни?

Никогда не задавался таким вопросом, т.к. не было надобности. Поищите на сайте, может кто-то уже интересовался чем-то похожим. Забейте в поисковике вкладка эксперты ограничения или что-то подобное.

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

 
Добрый день. Может кто подсказать по коду, делаю советника он должен открывать от текущей цены сделку на покупку и на продажу но порядок открытия должен быть таков что сделка Sell всегда выше сделки Buy. Но перепробовал множество уже вариаций всегда получается сначала buy а ниже идет sell. Пробывал открывать по текущей Buy и отложенный Sell через допустим 10 пунктов. но зациклить данную функцию не получилось Вот фрагмент кода 
void OnTick()
{
double currentPrice = SymbolInfoDouble(_Symbol, SYMBOL_BID);
double currentSpread = SymbolInfoInteger(_Symbol, SYMBOL_SPREAD);

MqlTradeResult result; // Переменная result объявляется здесь

// Проверяем, есть ли открытые позиции и спред не превышает максимальное значение
if (PositionsTotal() == 0 && currentSpread <= MaxSpread)
{
// Открываем позицию на продажу
MqlTradeRequest request_sell;
ZeroMemory(request_sell);

request_sell.action = TRADE_ACTION_DEAL;
request_sell.symbol = _Symbol;
request_sell.volume = 0.01;
request_sell.type = ORDER_TYPE_SELL;
request_sell.price = currentPrice;
request_sell.sl = 0;//currentPrice + 300 * _Point;
request_sell.tp = 0;//currentPrice — 300 * _Point;

OrderSend(request_sell, result);


// Открываем позицию на покупку
MqlTradeRequest request_buy;
ZeroMemory(request_buy);

request_buy.action = TRADE_ACTION_DEAL;
request_buy.symbol = _Symbol;
request_buy.volume = 0.01;
request_buy.type = ORDER_TYPE_BUY;
request_buy.price = currentPrice + 200 * _Point;
request_buy.sl = 0;//currentPrice — 300 * _Point;
request_buy.tp = 0;//currentPrice + 300 * _Point;

OrderSend(request_buy, result);

}
 
maxvoronin74 #:
Благодарю. Увидел. Там видно только за сегодня или можно настроить, чтобы были принты за другие дни?

Если много принтов, то и за сегодня не все отображаются. Но свежие лучше смотреть тут. Ведь файл лога надо ещё открыть, а тут видно сразу.

 
harrison90 #:
Добрый день. Может кто подсказать по коду, делаю советника он должен открывать от текущей цены сделку на покупку и на продажу но порядок открытия должен быть таков что сделка Sell всегда выше сделки Buy. Но перепробовал множество уже вариаций всегда получается сначала buy а ниже идет sell. Пробывал открывать по текущей Buy и отложенный Sell через допустим 10 пунктов. но зациклить данную функцию не получилось Вот фрагмент кода 

Если бы это было можно, я тут не сидел бы...

 
harrison90 #:
Добрый день. Может кто подсказать по коду, делаю советника он должен открывать от текущей цены сделку на покупку и на продажу но порядок открытия должен быть таков что сделка Sell всегда выше сделки Buy. Но перепробовал множество уже вариаций всегда получается сначала buy а ниже идет sell. Пробывал открывать по текущей Buy и отложенный Sell через допустим 10 пунктов. но зациклить данную функцию не получилось Вот фрагмент кода 
Вы, наверное, имели в виду коридор между уровнями поддержки и сопротивления? От нижнего уровня - бай, от верхнего - селл. Есть эксперты в маркете, по-моему, даже бесплатные, которые такое предлагают. Только надо чертить уровни самостоятельно. Есть индикаторы, которые с большей или меньшей точностью предлагают направление сделки. На их основании и код можно делать.


 

Всем доброго дня и хорошего настроения!

Вопросы от начинающего в программировании:

  1. В чём принципиальная разница между пользовательской структурой и переменными, объявленными на глобальном уровне?
  2. Скорость обращения к структуре и к глобальным переменным разная или примерно одинаковая?
  3. Кроме удобства в программировании пользовательская структура имеет, какое-то ещё полезное свойство?

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