[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 384

 
KostelloArtua:

Здравствуйте!

Вопрос: написал советника, работает на тестере. Работает на МетаТрейдере4 лишь у одного брокера из 2-х, как раз у того, где мне не надо. А где надо, не работает..... В чем может быть заковырка?????? Заранее спасибо....

Вы сами ответили на свой вопрос. На рынке Форекс огромное количество левых ДЦ. Где ваш каппитал вообще не выводится в рынок, а лежат у вашего ДЦ. У них простая арехметика 90 % Депозитов сливается в их карман. И они такие мастера ( Точнее Профи ) их задача заключается в том что-бы ВЫ незаработали. А пока разберётесь, что к чему не один депозит оставите в их карманах. Мой совет Вам ищите брокера где маленькие спреды. Лично я имею спред 0,8 за полный лот

( 100.000 лот спред 8 USD, а никак у большенства от 30 до 50 $ ) а это большая разница. Лично сам торгую от Немецкого Брокер Банка, где нет никаких посредников. И Терминал работает с Биржей, а не внутри конторы.

 
Vinin:

Видимо Вам нужно было обратиться сюда
Внимательно перечитал документацию, но так и не понял почему при нормальном закрытии ордеров переменная упорно не меняет своё значение...:-)))
 
KostelloArtua:

Здравствуйте!

Вопрос: написал советника, работает на тестере. Работает на МетаТрейдере4 лишь у одного брокера из 2-х, как раз у того, где мне не надо. А где надо, не работает..... В чем может быть заковырка?????? Заранее спасибо....


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

 
Fartowiy:

И Терминал работает с Биржей, а не внутри конторы.


Форекс - не биржевой.
 
zoritch:
Внимательно перечитал документацию, но так и не понял почему при нормальном закрытии ордеров переменная упорно не меняет своё значение...:-)))

Пока ничего сказать нельзя. Предоставленного кода не хватает
 
PapaYozh:

Форекс - не биржевой.

Сори Колеги !!! Немного не так вырозился,так как торгую не только Валютой. Но смысл остаётся тот же. Простите меня,но мой коментарий связан,, помощь и совет наченающему,,,

 
zoritch:

kickup - обычная объявленная переменная, int, по умолчанию равная нулю...:-)))


вам всё таки надо понять что от вас хотят видеть. прочитайте еще раз.
 
zoritch:

Джентльмены, подскажите, почему упорно не работает условие передачи переменной kickup профитности buy или sell ордера...?

for(int l = total - 1; l >= 0; l--) {
OrderSelect(l, SELECT_BY_POS, MODE_TRADES);
if ((OrderSymbol() == Symbol()) && (OrderMagicNumber() == mn)) {

if (OrderType() == OP_BUY) {
if (OrderProfit() > 0) kickup = 2;
if (! OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Bid,Digits), 2, CLR_NONE)) {
trymore();

}
} else {
if (OrderProfit() > 0) kickup = 1;
if (! OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Ask,Digits), 2, CLR_NONE)) {
trymore();
}
}
}
}

Не знаю смысла сей вашей конструкции, догадываться лень, но так попробуйте:

   for (int l = total-1; l >=0; l--) {
      if (OrderSelect(l, SELECT_BY_POS)) {
         if (OrderSymbol() == Symbol() && OrderMagicNumber() == mn) {

            if (OrderType() == OP_BUY) {
               if (OrderProfit() > 0) kickup = 2;
               if (!OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Bid,Digits), 2, CLR_NONE)) 
                  trymore();
                  } 
            if (OrderType() == OP_SELL){
               if (OrderProfit() > 0) kickup = 1;
               if (!OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Ask,Digits), 2, CLR_NONE))
                  trymore();
               }
            }
         }
      }

 
artmedia70:

Не знаю смысла сей вашей конструкции, догадываться лень, но так попробуйте:


А в чем отличие то?
 
Roger:

А в чем отличие то?
Добавил в цикл ещё одно условие и убрал лишние скобки. Можно вообще иначе всё сделать (даже лучше будет). Может человек каждый раз инициализирует свою переменную уже после цикла, нам же больше не дано видеть. Учимся на телепатов...
Причина обращения: