Новые сообщения · Участники · Правила форума · Поиск · RSS · Вход · Регистрация ·

Страница 4 из 10«123456910»
Форум трейдеров » Скрипты Советники Индикаторы для Metatrader4/Metatrader5 » MT 4 MQL программирование, помощь. » Вопросы от новичков (Здесь можно задать интересующий Вас вопрос)
Вопросы от новичков

expforexДата: Понедельник, 26.01.2009, 02:22 | Сообщение # 1
Главный Администартор
Группа: Администраторы
Сообщений: 9040
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Здесь можно задать интересующий Вас вопрос

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



Программирование на заказ || Наши Разработки

 
СообщениеЗдесь можно задать интересующий Вас вопрос

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


Автор - expforex
Дата добавления - 26.01.2009 в 02:22

expforexДата: Суббота, 14.11.2009, 12:37 | Сообщение # 31
Главный Администартор
Группа: Администраторы
Сообщений: 9040
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Quote (Masterb)
Приветствую, Владислав !
Возможно у вас уже реализован такой скрипт:
1 - Закрытие сделки по достижении определённого % проигрыша
2 - Закрытие всех сделок по достижении определённого % просадки на счёте суммарно
3 - Закрытие сделки по достижении определённого % прибыли
4 - Закрытие всех сделок по достижении определённого % прибыли на счёте суммарно

Спасибо.

http://expforex.at.ua/forum/9-53-1



Программирование на заказ || Наши Разработки

 
Сообщение
Quote (Masterb)
Приветствую, Владислав !
Возможно у вас уже реализован такой скрипт:
1 - Закрытие сделки по достижении определённого % проигрыша
2 - Закрытие всех сделок по достижении определённого % просадки на счёте суммарно
3 - Закрытие сделки по достижении определённого % прибыли
4 - Закрытие всех сделок по достижении определённого % прибыли на счёте суммарно

Спасибо.

http://expforex.at.ua/forum/9-53-1


Автор - expforex
Дата добавления - 14.11.2009 в 12:37

MDunleavy0237Дата: Четверг, 07.01.2010, 13:53 | Сообщение # 32
Трейдер - Рядовой
Группа: Пользователи
Сообщений: 1
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Здр.! Есть ли вообшще развитие темы мультивалютных индикаторов? Хотелось бы видеть некий инструмент, позволяющий строить торговые системы используя принцип хеджирования и мартингейла. В Excel это не очень сложно реализуется. Но удобно только в основном для анализа. Торговля из Excel возможна, но спец.торговый терминал МТ тут явно предоставляет большие возможности. Не знаю может отдельную тему "симбиоза" Excel и МТ нужно завести. Ну пусть пока будет здесь если администрация не возражает.
Здесь на картинке график P&F (просто я их люблю и мне кажется что в них с их помощью можно отразить любой процесс) в котором показано изменение суммарной позиции в $PIPS т.е. в пунктах приведенных к размеру пункта в долларах четырёх пар AUDUSD - Sell; EURUSD,NZDUSD,USDCHF - buy.

Прикрепления: 0634893.png(89Kb) · List1q.zip(10Kb)
 
СообщениеЗдр.! Есть ли вообшще развитие темы мультивалютных индикаторов? Хотелось бы видеть некий инструмент, позволяющий строить торговые системы используя принцип хеджирования и мартингейла. В Excel это не очень сложно реализуется. Но удобно только в основном для анализа. Торговля из Excel возможна, но спец.торговый терминал МТ тут явно предоставляет большие возможности. Не знаю может отдельную тему "симбиоза" Excel и МТ нужно завести. Ну пусть пока будет здесь если администрация не возражает.
Здесь на картинке график P&F (просто я их люблю и мне кажется что в них с их помощью можно отразить любой процесс) в котором показано изменение суммарной позиции в $PIPS т.е. в пунктах приведенных к размеру пункта в долларах четырёх пар AUDUSD - Sell; EURUSD,NZDUSD,USDCHF - buy.

Автор - MDunleavy0237
Дата добавления - 07.01.2010 в 13:53

=-JOY=-Дата: Среда, 13.01.2010, 14:23 | Сообщение # 33
Трейдер - Рядовой
Группа: Пользователи
Сообщений: 2
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Доброго времени суток!
Может быть у кого есть експерт Visual trtade(меняет уровни SL,TP просто перетаскиванием мыши) буду признателен т.к мой на реале у ДЦ Альпари не работает.Возможно проблема в пятизнаке, но в Mql4 не силён сам поравить не могу.Знающие люди подскажети плз.....

Прикрепления: VisualTrade.rar(3Kb)
 
СообщениеДоброго времени суток!
Может быть у кого есть експерт Visual trtade(меняет уровни SL,TP просто перетаскиванием мыши) буду признателен т.к мой на реале у ДЦ Альпари не работает.Возможно проблема в пятизнаке, но в Mql4 не силён сам поравить не могу.Знающие люди подскажети плз.....

Автор - =-JOY=-
Дата добавления - 13.01.2010 в 14:23

expforexДата: Четверг, 14.01.2010, 02:32 | Сообщение # 34
Главный Администартор
Группа: Администраторы
Сообщений: 9040
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Это для мт5, а Вам нужен для мт4 : http://expforex.at.ua/index/exp_virtualtradepad/0-158



Программирование на заказ || Наши Разработки

 
СообщениеЭто для мт5, а Вам нужен для мт4 : http://expforex.at.ua/index/exp_virtualtradepad/0-158

Автор - expforex
Дата добавления - 14.01.2010 в 02:32

GrafBassДата: Вторник, 07.12.2010, 20:44 | Сообщение # 35
Трейдер - Полковник
Группа: Член клуба UTS
Сообщений: 158
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Здравствуйте.
1) Правильно ли я понимаю, что магик номер зашитый в ордер живет вместе с этим ордером на машине брокера?
2) Что будет с магиком ордера, если ордер открыл советник на моем "терминале А", а на на моем "Терминале Б без советника" закрыл часть этого ордера? И что вообще технически происходит при частичном закрытии ордера?
3) Будет ли понят советником Терминала А ордер выставленный на Терминале Б с принудительно вшитым (скриптом), ИД магиком?

Терминалы А и Б это клиенты запущенные на разных компьютерах.



Будующее нельзя предвидеть, но можно изобрести.
 
СообщениеЗдравствуйте.
1) Правильно ли я понимаю, что магик номер зашитый в ордер живет вместе с этим ордером на машине брокера?
2) Что будет с магиком ордера, если ордер открыл советник на моем "терминале А", а на на моем "Терминале Б без советника" закрыл часть этого ордера? И что вообще технически происходит при частичном закрытии ордера?
3) Будет ли понят советником Терминала А ордер выставленный на Терминале Б с принудительно вшитым (скриптом), ИД магиком?

Терминалы А и Б это клиенты запущенные на разных компьютерах.


Автор - GrafBass
Дата добавления - 07.12.2010 в 20:44

expforexДата: Среда, 08.12.2010, 00:13 | Сообщение # 36
Главный Администартор
Группа: Администраторы
Сообщений: 9040
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

1. Да
2. Ничего, он останется
3. Если использовтаь один Магик, то все нормально - Терминал а будет понимать терминал Б, тут проблем быть не должно.



Программирование на заказ || Наши Разработки

 
Сообщение1. Да
2. Ничего, он останется
3. Если использовтаь один Магик, то все нормально - Терминал а будет понимать терминал Б, тут проблем быть не должно.

Автор - expforex
Дата добавления - 08.12.2010 в 00:13

GrafBassДата: Вторник, 11.01.2011, 11:09 | Сообщение # 37
Трейдер - Полковник
Группа: Член клуба UTS
Сообщений: 158
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

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

Добавлено (11.01.2011, 11:09)
---------------------------------------------
Возможно я свой вопрос выше, изложил в слишком несерьезной манере.
Но я так и не могу найти ответ четкий и ясный, все как то мутно обьясняется.
Также не могу найти алгоритм формирования цены на Форекс, это конечно понятно, что больше продают и цена дешевеет и наоборот. Но какой все таки технический алгоритм этого процесса, возможно есть некий массив при изменение которого, по какой то формуле меняется цена. Как то ведь система ее двигает и не хаотично а по какой то заложенной схеме, какая это схема и математическая формула без общих понятий?



Будующее нельзя предвидеть, но можно изобрести.
 
СообщениеЗдравствуйте.
Во всей огромной массе информации в инете не нашел для себя четкий вразумительный ответ, что из себя технически представляют уровни поддержки и сопротивления. Что это может быть кроме расплывчатого интереса и активности в ценовых диапазонах.
Что технически является уровнем, может это толпа отложенных ордеров или стоп лоссов на эту цену, как то я не врубаюсь. Если это не отложенники, а рыночная толпа "заинтересованная ценой" бегущая к компам открывать ордера, то как то странно выглядит понятие "сильная поддержка" это вроде сильной толпы, да и больно часто и избирательно они бегают. Странно что у толпы мнение довольно узко сходятся.
А как быть с новогодними праздниками, толпа валялась бухая в одном носке, а уровни никуда не делись... Странно все это как то..........

Добавлено (11.01.2011, 11:09)
---------------------------------------------
Возможно я свой вопрос выше, изложил в слишком несерьезной манере.
Но я так и не могу найти ответ четкий и ясный, все как то мутно обьясняется.
Также не могу найти алгоритм формирования цены на Форекс, это конечно понятно, что больше продают и цена дешевеет и наоборот. Но какой все таки технический алгоритм этого процесса, возможно есть некий массив при изменение которого, по какой то формуле меняется цена. Как то ведь система ее двигает и не хаотично а по какой то заложенной схеме, какая это схема и математическая формула без общих понятий?


Автор - GrafBass
Дата добавления - 11.01.2011 в 11:09

max0207806156Дата: Вторник, 22.11.2011, 23:16 | Сообщение # 38
Трейдер - Рядовой
Группа: Пользователи
Сообщений: 5
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Здравствуйте.
Помогите пожалуйста сейчас пишу своего первого советника и ни как не могу добиться чтоб он при условии что линия А<Б открывал ордер BUY на каждой новой каждой новой свече и наоборот при А>Б на SELL
без этих условий ордер открывается каждый новый бар
вот код без условия
int New_Bar; // 0/1 Факт образования нового бара
int Time_0; // Время начала нового бара

//===========================================================================
int start()
{

New_Bar=0; // Для начала обнулимся
if (Time_0 != Time[0]) // Если уже другое время начала бара
{
New_Bar= 1; // А вот и новый бар
Time_0 = Time[0]; // Запомним время начала нового бара

}

if ( New_Bar==1)

{

OrderSend(Symbol(),OP_BUY,0.01,Ask,3,0,Ask+25*Point);
RefreshRates();

}

return;
}

 
СообщениеЗдравствуйте.
Помогите пожалуйста сейчас пишу своего первого советника и ни как не могу добиться чтоб он при условии что линия А<Б открывал ордер BUY на каждой новой каждой новой свече и наоборот при А>Б на SELL
без этих условий ордер открывается каждый новый бар
вот код без условия
int New_Bar; // 0/1 Факт образования нового бара
int Time_0; // Время начала нового бара

//===========================================================================
int start()
{

New_Bar=0; // Для начала обнулимся
if (Time_0 != Time[0]) // Если уже другое время начала бара
{
New_Bar= 1; // А вот и новый бар
Time_0 = Time[0]; // Запомним время начала нового бара

}

if ( New_Bar==1)

{

OrderSend(Symbol(),OP_BUY,0.01,Ask,3,0,Ask+25*Point);
RefreshRates();

}

return;
}

Автор - max0207806156
Дата добавления - 22.11.2011 в 23:16

expforexДата: Среда, 23.11.2011, 12:18 | Сообщение # 39
Главный Администартор
Группа: Администраторы
Сообщений: 9040
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

В Вашем случае:

Code

int New_Bar; // 0/1 Факт образования нового бара   
int Time_0; // Время начала нового бара   
//+------------------------------------------------------------------+
//|                    |
//+------------------------------------------------------------------+
int start()
    {

     New_Bar=0; // Для начала обнулимся   
     if(Time_0!=Time[0]) // Если уже другое время начала бара   
       {
        New_Bar=1; // А вот и новый бар   
        Time_0=Time[0]; // Запомним время начала нового бара   

       }

     double lineA=3; // Здесь прописываем данные линий 1   
     double lineB=5; // Здесь прописываем данные линий 2

     if(New_Bar==1 && lineA<lineB)
       {
        RefreshRates();
        OrderSend(Symbol(),OP_BUY,0.01,Ask,3,0,Ask+25*Point);
       }

     if(New_Bar==1 && lineA>lineB)
       {
        RefreshRates();
        OrderSend(Symbol(),OP_SELL,0.01,Bid,3,0,Bid-25*Point);
       }

     return;
    }
//+------------------------------------------------------------------+



Хотя если разбирать код для новичка - сойдет, но конечно же тут нужны проверки на реквоты, стоплоссы и такк далее.

Основные строки:

double lineA=3; // Здесь прописываем данные линий 1
double lineB=5; // Здесь прописываем данные линий 2

Это сами линии, их надо как-то обозначить, я взял по умолчанию 3 и 5



Программирование на заказ || Наши Разработки

 
СообщениеВ Вашем случае:
Code

int New_Bar; // 0/1 Факт образования нового бара   
int Time_0; // Время начала нового бара   
//+------------------------------------------------------------------+
//|                    |
//+------------------------------------------------------------------+
int start()
    {

     New_Bar=0; // Для начала обнулимся   
     if(Time_0!=Time[0]) // Если уже другое время начала бара   
       {
        New_Bar=1; // А вот и новый бар   
        Time_0=Time[0]; // Запомним время начала нового бара   

       }

     double lineA=3; // Здесь прописываем данные линий 1   
     double lineB=5; // Здесь прописываем данные линий 2

     if(New_Bar==1 && lineA<lineB)
       {
        RefreshRates();
        OrderSend(Symbol(),OP_BUY,0.01,Ask,3,0,Ask+25*Point);
       }

     if(New_Bar==1 && lineA>lineB)
       {
        RefreshRates();
        OrderSend(Symbol(),OP_SELL,0.01,Bid,3,0,Bid-25*Point);
       }

     return;
    }
//+------------------------------------------------------------------+



Хотя если разбирать код для новичка - сойдет, но конечно же тут нужны проверки на реквоты, стоплоссы и такк далее.

Основные строки:

double lineA=3; // Здесь прописываем данные линий 1
double lineB=5; // Здесь прописываем данные линий 2

Это сами линии, их надо как-то обозначить, я взял по умолчанию 3 и 5

Автор - expforex
Дата добавления - 23.11.2011 в 12:18

max020780Дата: Пятница, 09.03.2012, 20:50 | Сообщение # 40
Трейдер - Сержант
Группа: Пользователи
Сообщений: 27
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Вечер добрый !!!!
подскажите как вот здесь правильно реализовать удаление нарисованных линий

Code
l_pos_120 = 0;
          while (l_pos_120 < OrdersTotal()) {
             if (OrderSelect(l_pos_120, SELECT_BY_POS) == TRUE) {
                l_pos_120++;
                if (l_magic_116 == l_magic_116) {
                   Comment("ЗАКРЫВАЮ");
                   if (OrderSymbol() == Symbol()) {
                      if (OrderTicket() == l_ticket_388) {
                         if (OrderType() == OP_BUY) {
                            if (IsConnected() == TRUE && IsTradeContextBusy() == FALSE) {
                    if (OrderClose(OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 30, Olive) == 0) {
                    for (int i=0; i<300; i++) {
      
                             lineбай[i]= "Уровень.бай = "+i;
                             ObjectDelete(lineбай[i]);
    }
                    l_pos_120--;}
                    else {
                    if (ls_408 == "закр_бай_минус") l_count_324++;
                    if (ls_408 == "закр_бай_плюс") l_count_316++;
                    }
                            }
                         }
                         if (OrderType() == OP_SELL) {
                            if (IsConnected() == TRUE && IsTradeContextBusy() == FALSE) {
                    if (OrderClose(OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 30, Olive) == 0) l_pos_120--;
                    else {
                    if (ls_408 == "закр_селл_минус") l_count_328++;
                    if (ls_408 == "закр_селл_плюс") l_count_320++;
                    }
                            }
                         }
                      }
                   }
                }
             }
          }
          Comment("ПРОВЕРЯЮ");
          if (li_300 <= l_count_316 && li_304 <= l_count_320 && li_308 <= l_count_324 && li_312 <= l_count_328) {
             Comment("ВЫШЕЛ");
             return;
          }
       }
    }
    if (gi_176 == TRUE) {
       if (ld_204 < MarketInfo(OrderSymbol(), MODE_ASK) && l_count_140 != 0) li_8 = FALSE;
       if (ld_212 > MarketInfo(OrderSymbol(), MODE_BID) && l_count_144 != 0) li_12 = FALSE;
    } else {
       if (OrdersTotal() > 0) {
          l_pos_120 = 0;
          while (l_pos_120 < OrdersTotal()) {
             if (OrderSelect(l_pos_120, SELECT_BY_POS) == TRUE) {
                l_pos_120++;
                if (l_magic_116 == OrderMagicNumber()) {
                   if (OrderType() == OP_BUY && OrderSymbol() == Symbol())
                      if (OrderOpenPrice() <= MarketInfo(Symbol(), MODE_ASK) && l_count_140 != 0) li_8 = FALSE;
                   if (OrderType() == OP_SELL && OrderSymbol() == Symbol())
                      if (OrderOpenPrice() >= MarketInfo(Symbol(), MODE_BID) && l_count_144 != 0) li_12 = FALSE;
                }
             }
          }
       }
    }
    if (l_datetime_220 > iTime(Symbol(), Period(), 0)) li_8 = FALSE;
    if (l_datetime_224 > iTime(Symbol(), Period(), 0)) li_12 = FALSE;
    if (auto_lot == TRUE && ls_244 == "лот_увеличиваем") {
       if (li_8 == TRUE) ld_0 = 2.0 * (ld_124 / число_ставок);
       if (li_12 == TRUE) ld_0 = 2.0 * (ld_132 / число_ставок);
    }
    if (auto_lot == TRUE && ls_228 == "первая_завершеная") {
       if (li_8 == TRUE) ld_0 = ld_124;
       if (li_12 == TRUE) ld_0 = ld_132;
    }
    ld_0 = NormalizeDouble(ld_0, 2);
    if (ld_0 > MarketInfo(Symbol(), MODE_MAXLOT)) ld_0 = MarketInfo(Symbol(), MODE_MAXLOT);
    if (ld_0 < MarketInfo(Symbol(), MODE_MINLOT)) ld_0 = MarketInfo(Symbol(), MODE_MINLOT);
    ld_0 = NormalizeDouble(ld_0, 2);
    double ld_416 = 0;
    int l_count_424 = 0;
    if (OrdersTotal() > 0) {
       l_pos_120 = 0;
       while (l_pos_120 < OrdersTotal()) {
          if (OrderSelect(l_pos_120, SELECT_BY_POS) == TRUE) {
             l_pos_120++;
             ld_416 += OrderLots();
             l_count_424++;
          }
       }
    }
    int l_count_428 = 0;
    
    int l_count_432 = 0;
    int li_436 = 1;
    if (ls_228 != "нулевая") li_436 = число_ставок;
    if (l_count_424 < максимальное_количество_сделок && ld_416 < максимальный_лот) {
       if (li_8 == TRUE || li_12 == TRUE) {
          if (AccountFreeMarginCheck(Symbol(), OP_SELL, ld_0) > 0.0 && AccountFreeMarginCheck(Symbol(), OP_BUY, ld_0) > 0.0) {
             while (l_count_428 < li_436) {
                if (звук == TRUE) PlaySound("wait.wav");
                if (li_8 == TRUE) {
                
         if (OrderSend(Symbol(), OP_BUY, ld_0, MarketInfo(Symbol(), MODE_ASK), 30, 0, 0, "", l_magic_116, 0, Lime) != -1){          
                    l_count_4281++;  
                 for (int i=0; i<l_count_4281; i++) {  
     
      
     dбай[i] = MarketInfo(Symbol(), MODE_ASK);
      
     datetime Ts = Time[0]+Period()*40*(WindowBarsPerChart());
     
      
     lineбай[i]= "Уровень.бай = "+i;
      
       
     if(ObjectFind(lineбай[i])<0){
     ObjectCreate(lineбай[i], OBJ_TREND, 0, Ts, dбай[i], Time[10],dбай[i]);
     ObjectSet(lineбай[i], OBJPROP_STYLE, стиль);
     ObjectSet(lineбай[i], OBJPROP_WIDTH, ширина);  
     ObjectSet(lineбай[i], OBJPROP_COLOR, Red);
     ObjectSet(lineбай[i], OBJPROP_BACK,  true);
     ObjectSet(lineбай[i], OBJPROP_RAY,   луч); // Луч   
      
     Print("колво линий = ",l_count_4281);
      
     }
          }
   l_count_428++;}
                   else {
                      l_count_432++;

 
СообщениеВечер добрый !!!!
подскажите как вот здесь правильно реализовать удаление нарисованных линий
Code
l_pos_120 = 0;
          while (l_pos_120 < OrdersTotal()) {
             if (OrderSelect(l_pos_120, SELECT_BY_POS) == TRUE) {
                l_pos_120++;
                if (l_magic_116 == l_magic_116) {
                   Comment("ЗАКРЫВАЮ");
                   if (OrderSymbol() == Symbol()) {
                      if (OrderTicket() == l_ticket_388) {
                         if (OrderType() == OP_BUY) {
                            if (IsConnected() == TRUE && IsTradeContextBusy() == FALSE) {
                    if (OrderClose(OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 30, Olive) == 0) {
                    for (int i=0; i<300; i++) {
      
                             lineбай[i]= "Уровень.бай = "+i;
                             ObjectDelete(lineбай[i]);
    }
                    l_pos_120--;}
                    else {
                    if (ls_408 == "закр_бай_минус") l_count_324++;
                    if (ls_408 == "закр_бай_плюс") l_count_316++;
                    }
                            }
                         }
                         if (OrderType() == OP_SELL) {
                            if (IsConnected() == TRUE && IsTradeContextBusy() == FALSE) {
                    if (OrderClose(OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 30, Olive) == 0) l_pos_120--;
                    else {
                    if (ls_408 == "закр_селл_минус") l_count_328++;
                    if (ls_408 == "закр_селл_плюс") l_count_320++;
                    }
                            }
                         }
                      }
                   }
                }
             }
          }
          Comment("ПРОВЕРЯЮ");
          if (li_300 <= l_count_316 && li_304 <= l_count_320 && li_308 <= l_count_324 && li_312 <= l_count_328) {
             Comment("ВЫШЕЛ");
             return;
          }
       }
    }
    if (gi_176 == TRUE) {
       if (ld_204 < MarketInfo(OrderSymbol(), MODE_ASK) && l_count_140 != 0) li_8 = FALSE;
       if (ld_212 > MarketInfo(OrderSymbol(), MODE_BID) && l_count_144 != 0) li_12 = FALSE;
    } else {
       if (OrdersTotal() > 0) {
          l_pos_120 = 0;
          while (l_pos_120 < OrdersTotal()) {
             if (OrderSelect(l_pos_120, SELECT_BY_POS) == TRUE) {
                l_pos_120++;
                if (l_magic_116 == OrderMagicNumber()) {
                   if (OrderType() == OP_BUY && OrderSymbol() == Symbol())
                      if (OrderOpenPrice() <= MarketInfo(Symbol(), MODE_ASK) && l_count_140 != 0) li_8 = FALSE;
                   if (OrderType() == OP_SELL && OrderSymbol() == Symbol())
                      if (OrderOpenPrice() >= MarketInfo(Symbol(), MODE_BID) && l_count_144 != 0) li_12 = FALSE;
                }
             }
          }
       }
    }
    if (l_datetime_220 > iTime(Symbol(), Period(), 0)) li_8 = FALSE;
    if (l_datetime_224 > iTime(Symbol(), Period(), 0)) li_12 = FALSE;
    if (auto_lot == TRUE && ls_244 == "лот_увеличиваем") {
       if (li_8 == TRUE) ld_0 = 2.0 * (ld_124 / число_ставок);
       if (li_12 == TRUE) ld_0 = 2.0 * (ld_132 / число_ставок);
    }
    if (auto_lot == TRUE && ls_228 == "первая_завершеная") {
       if (li_8 == TRUE) ld_0 = ld_124;
       if (li_12 == TRUE) ld_0 = ld_132;
    }
    ld_0 = NormalizeDouble(ld_0, 2);
    if (ld_0 > MarketInfo(Symbol(), MODE_MAXLOT)) ld_0 = MarketInfo(Symbol(), MODE_MAXLOT);
    if (ld_0 < MarketInfo(Symbol(), MODE_MINLOT)) ld_0 = MarketInfo(Symbol(), MODE_MINLOT);
    ld_0 = NormalizeDouble(ld_0, 2);
    double ld_416 = 0;
    int l_count_424 = 0;
    if (OrdersTotal() > 0) {
       l_pos_120 = 0;
       while (l_pos_120 < OrdersTotal()) {
          if (OrderSelect(l_pos_120, SELECT_BY_POS) == TRUE) {
             l_pos_120++;
             ld_416 += OrderLots();
             l_count_424++;
          }
       }
    }
    int l_count_428 = 0;
    
    int l_count_432 = 0;
    int li_436 = 1;
    if (ls_228 != "нулевая") li_436 = число_ставок;
    if (l_count_424 < максимальное_количество_сделок && ld_416 < максимальный_лот) {
       if (li_8 == TRUE || li_12 == TRUE) {
          if (AccountFreeMarginCheck(Symbol(), OP_SELL, ld_0) > 0.0 && AccountFreeMarginCheck(Symbol(), OP_BUY, ld_0) > 0.0) {
             while (l_count_428 < li_436) {
                if (звук == TRUE) PlaySound("wait.wav");
                if (li_8 == TRUE) {
                
         if (OrderSend(Symbol(), OP_BUY, ld_0, MarketInfo(Symbol(), MODE_ASK), 30, 0, 0, "", l_magic_116, 0, Lime) != -1){          
                    l_count_4281++;  
                 for (int i=0; i<l_count_4281; i++) {  
     
      
     dбай[i] = MarketInfo(Symbol(), MODE_ASK);
      
     datetime Ts = Time[0]+Period()*40*(WindowBarsPerChart());
     
      
     lineбай[i]= "Уровень.бай = "+i;
      
       
     if(ObjectFind(lineбай[i])<0){
     ObjectCreate(lineбай[i], OBJ_TREND, 0, Ts, dбай[i], Time[10],dбай[i]);
     ObjectSet(lineбай[i], OBJPROP_STYLE, стиль);
     ObjectSet(lineбай[i], OBJPROP_WIDTH, ширина);  
     ObjectSet(lineбай[i], OBJPROP_COLOR, Red);
     ObjectSet(lineбай[i], OBJPROP_BACK,  true);
     ObjectSet(lineбай[i], OBJPROP_RAY,   луч); // Луч   
      
     Print("колво линий = ",l_count_4281);
      
     }
          }
   l_count_428++;}
                   else {
                      l_count_432++;

Автор - max020780
Дата добавления - 09.03.2012 в 20:50
Форум трейдеров » Скрипты Советники Индикаторы для Metatrader4/Metatrader5 » MT 4 MQL программирование, помощь. » Вопросы от новичков (Здесь можно задать интересующий Вас вопрос)
Страница 4 из 10«123456910»
Поиск:


WebMoney Яндекс цитирования.