Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Здравствуйте,
Я пытаюсь создать советника, но у меня возникли некоторые проблемы с кодом. Советник вроде бы работает, но есть одна ошибка.
"invalid ticket for OrderDelete function".
Как это решить?
Вот часть кода:
{
int OrderCnt;
for(OrderCnt=0;OrderCnt<total;OrderCnt++)
if(Bid>iBuyPrice){closing = true; OrderDelete(OrderTicket());return(0);}
if(Ask<iSellPrice){closing = true; OrderDelete(OrderTicket());return(0);}
{
OrderSelect(OrderCnt,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol() && OrderMagicNumber()== magicnumber && OrderType()== OP_BUYSTOP) OrderDelete(OrderTicket());
else if(OrderSymbol()==Symbol() && OrderMagicNumber() == magicnumber && OrderType() == OP_SELLSTOP) OrderDelete(OrderTicket());
else if(OrderSymbol()==Symbol() && OrderMagicNumber() == magicnumber && OrderType() == OP_SELLLIMIT) OrderDelete(OrderTicket());
else if(OrderSymbol()==Symbol() && OrderMagicNumber() == magicnumber && OrderType() ==OP_BUYLIMIT) OrderDelete(OrderTicket());
}
if(!ContinueTrading) Enter=false;
}
return(0);
MA Cross со скальпингом и хеджированием
дело закрыто...
Вопрос по вычитанию при кодировании советника
Я знаю, что если я хочу сказать 80 пипсов, то я закодирую как 80 * Point.
Но если я хочу закодировать результирующий пипс от вычитания двух валютных значений, должен ли я закодировать A=1.4290-1.4210 / Point? чтобы получить 80 как значение A?
Буду признателен за помощь.
Дэйв
не забудьте "()"
должно быть "(1.4290-1.4210 )/ точка".
Параметры ICustom
У меня есть два вопроса по поводу ICustom.
Во-первых, если вы не включаете все параметры индикатора в вызов ICustom, правильно ли я понимаю, что недостающие параметры устанавливаются по умолчанию в индикаторе?
Другой вопрос заключается в том, что если в качестве параметра используется неверный тип, выдается ли какое-либо сообщение об ошибке, которое можно определить в stdlib?
Заранее спасибо за ответ
Если вы опустите параметры, то будут использоваться значения по умолчанию. Однако будьте осторожны, поскольку параметры, которые вы хотите использовать, должны располагаться в том же порядке, в котором они появляются в индикаторе.
Я не могу вспомнить, будут ли возникать ошибки, если вы попытаетесь передать неверный тип, но я уверен, что вы можете легко проверить это.
Удачи
Lux
Как это сделать
открываем сделку, если сделка проигрывает, добавляем 15 трейлинг стоп, оставляем сделку открытой и открываем новую сделку (советник имеет только 1 открытую сделку в любой момент времени), так что советник теперь работает только с новой сделкой
Скрипт для добавления лотов к открытым ордерам в профите
Здравствуйте, кодерсгуру,
Я только что прочитал ваш курс по MT4 и попытался составить скрипт, который
добавляет лоты к открытым ордерам, которые находятся в прибыли.
Также большое спасибо за учебник, он хорошо написан и довольно юморной.....
Вот код:
#property show_inputs
#include
//+------------------------------------------------------------------+
//| функция запуска скриптовой программы |
//+------------------------------------------------------------------+
int start()
{
int total,cnt,err;
total = OrdersTotal();
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderProfit() >= 15) // прибыль больше 15 пунктов
if(OrderType()==OP_BUY)
OrderSend(OrderSymbol(),OP_BUY, 0.1, MarketInfo(OrderSymbol(),MODE_ASK), 2, NULL, NULL, NULL, NULL, NULL, CLR_NONE);
else
OrderSend(OrderSymbol(),OP_SELL, 0.1, MarketInfo(OrderSymbol(),MODE_BID), 2, NULL, NULL, NULL, NULL, NULL, CLR_NONE);
err=GetLastError();
Print("error(",err,"): ",ErrorDescription(err));
Sleep(1000);
}
//----
//----
return(0);
}
Есть ли в этом толк, кодерсгуру?
Заранее спасибо, очень признателен...
Будь здоров
Джефф
Привет всем
Кто-нибудь может мне помочь. Мне прислали файл и сказали, что я должен сначала "декомпилировать" его в окне metatrader, а затем загрузить индикаторы на график! Что такое компиляция и декомпиляция? Как мне это сделать, а также есть ли pdf с пошаговыми инструкциями о том, как ориентироваться в таких вещах, как загрузка советников и т.д. и других подобных вещах для mt4. Я в порядке с некоторыми вещами в mt4 сейчас, т.е. загрузка индикаторов достаточно проста, но мне нужно понять больше об этом. Большое спасибо.
Я думаю - вам нужна компиляция.
Декомпиляция незаконна, как и взлом.
Потому что файлы ex4 загружаются/прикрепляются к окну/графику. Компиляция делается в MetaEditor.
Прочитайте эту тему с самого начала о том, как это сделать.
https://www.mql5.com/en/forum/178706