[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 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:

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