Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
O.K. Вот модифицированная версия, в которой я получил ту же ошибку.
Y.
Функция вообще не нужна ... ... ... избавьтесь от нее.
Давай сделаем это снова, часть 2 :(
Сделайте это... ( повторяется отсюда: https://www.mql5.com/en/forum/139543 )
... и Функция вам вообще не понадобится.
Давайте сделаем это снова, часть 2 :(
Мне нужна ваша поддержка, пожалуйста, так как у меня отпуск, и я вернусь в воскресенье в пятницу.
Я сделаю то, что вы посоветовали, и надеюсь на успех.
Спасибо вам обоим.
Y.
Мне нужна ваша поддержка, пожалуйста, так как у меня отпуск, и я вернусь в воскресенье.
Мне нужна ваша помощь, пожалуйста, так как у меня отпуск, и я вернусь в воскресенье.
Я сделаю то, что вы посоветовали, и надеюсь на успех.
Спасибо вам обоим.
Y.
Приятно провести время :D
В это воскресенье я буду смотреть F1 Монако :D
Хорошо провести время :D
У меня есть F1 Монако, чтобы посмотреть в это воскресенье :D
Спасибо, onewithzachy,
Во-первых, я думаю, что у вас есть небольшая ошибка:
for(int cnt = OrdersTotal() -1 ; cnt >= 0; cnt--)
Вы должны добавить зеленую и жирную коррекцию.
Но я не понимаю, как следующая строка может нам помочь?
#include "..\libraries\stdlib.mq4"
Спасибо, Y.
Я нахожу это намного проще, и это работает для меня:
//---------------------------------------------+
void CheckForClose()
{
int i, res, order_id;
//-------+
for(i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;
if(OrderMagicNumber()!=MAGICMA || OrderSymbol()!=Symbol()) continue;
order_id= OrderTicket();
//--перемещение и закрытие
if (OrderType() == OP_BUY)
{
if (Is_Close_Buy==true) //--сигнал к закрытию
{
RefreshRates();//обновление ставок
res= 0;
res= OrderClose(order_id,Lots,Bid,3,Gold);
while(IsTradeAllowed() == false) Sleep(100); //---подождите немного, чтобы получить ответ от сервера
if (res>0){
PlaySound("cash_register.wav");} //--счастливый звук, надеемся заработать деньги !!!!
if (res<0)
{
PlaySound("creak.wav");
Print("OrderSend failed with error #",GetLastError());
return(0);
}
return;
}
}// end close Проверка ордера на покупку
//---
if (OrderType() == OP_SELL)
{
if (Is_Close_Sell==true) //--сигнал к закрытию
{
RefreshRates();// Обновление ставок
res= 0;
res= OrderClose(order_id,Lots,Ask,3,Gold);
while(IsTradeAllowed() == false) Sleep(100); //---подождать немного, чтобы получить ответ от сервера
if (res>0){
PlaySound("cash_register.wav");}
if(res<0)
{
PlaySound("creak.wav");
Print("OrderSend failed with error #",GetLastError());
return(0);
}
return;
}
}// end close Sell Order check
}//--------+
return;
}
//----------------------------------------------+
А завтра FP3 и квалификация ;-)
@ RaptorUK, я подумываю о том, чтобы надеть шлем для аварийных ситуаций, так я хотя бы смогу думать наперед, чем сейчас. Разве не так, эти водители думают наперед? :D
@ skaboy, я прошу вас вежливо, если вы не возражаете, не могли бы вы использовать кнопку SRC для публикации вашего кода. Мы просили об этом слишком много раз только в этой теме.
@ Crossy, Прошла почти неделя с момента вашего первого сообщения. Конечно, я понимаю, что у вас может не быть ясной головы сейчас, имея дело с 4000 линиями, прямо сейчас я сам тоже здесь. Если вы все еще не понимаете, вы можете попросить нас написать этот код Close для вас. Однако вы все равно должны написать код хоть немного - и показать нам. :D, код RaptorUK чуть выше там более прямой, чем мой, подумайте об этом и затем вы можете двигаться дальше с вашим советником.
С тем, как вы пишете код здесь - слишком много ненужного повторяющегося кода - вы должны немного беспокоиться с вашими 4000 строк кода, что это может замедлить ваш советник и заставить его пропустить тик. Это нормально пропустить пару пунктов, но что случится, если вы пропустите 10 пунктов? И, вероятно, ваши 4000 строк могут быть сокращены до 400 строк. Кто знает? Ваш советник станет более легким и быстрым. :D
Я нахожу это гораздо более простым, и это работает для меня: