Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 549

 
GSB:

Нет не добавляет, если поставили int slippage первым, то выделится 4 байта, потому и надо добавить до 8 ( int reserve) или вместо int использовать long


Тут один момент ещё есть странный. Если будет элемент структуры типа string, тогда если количество символов переменной данного элемента типа string больше 7, тогда его помещаем выше остальных? Ведь у строк всегда есть в конце строки нуль-символ \n, а если в строке больше 7 элементов, например, 8 элементов, то в строке будет 8 + 1 байт, т.к. 8 + \n. Так?
 
GSB:

129 ошибка возникает когда цена успевает измениться,прежде чем ДЦ выполнит ваш ордер,используйте слиппаж побольше.


Слип 50 старых пунктов, у цены после запятой то 5 знаков, то 4(видать ноль опускается), а бывает 12 или 16. Я тестирую на демке.
 
Example2:


Нет не в тестере, просто демо счет.

Уже заметил ваш пост и свой удалил - писал его с прошлой страницы. Без кода вам сложно что-то подсказать конкретное.
 
artmedia70:
Уже заметил ваш пост и свой удалил - писал его с прошлой страницы. Без кода вам сложно что-то подсказать конкретное.


Вам скинуть в форум или в личку?
 
Example2:

Вам скинуть в форум или в личку?
Скиньте на форум если не жалко. Кто-нибудь поправит. Я спать уже пополз - пол-шестого утра, конь ещё не валялся...
 
Я тоже спать.
Файлы:
 
     USDCADAsk = MarketInfo("USDCAD",MODE_ASK);            
     USDCADBid = MarketInfo("USDCAD",MODE_BID);

     Comment("USDCADAsk = "+DoubleToStr(USDCADAsk,нужный диджитлс),"\n",
             "USDCADBid = "+DoubleToStr(USDCADBid,нужный диджитлс));
 
hoz:

Тут один момент ещё есть странный. Если будет элемент структуры типа string, тогда если количество символов переменной данного элемента типа string больше 7, тогда его помещаем выше остальных? Ведь у строк всегда есть в конце строки нуль-символ \n, а если в строке больше 7 элементов, например, 8 элементов, то в строке будет 8 + 1 байт, т.к. 8 + \n. Так?

Если структура содержит переменные типа string и/или объект динамического массива, то компилятор назначает для такой структуры неявный конструктор, в котором производится обнуление всех членов структуры типа string и правильная инициализация для объекта динамического массива.

 
Example2:

Я тоже спать.

Прикрепленные файлы:
Kuklovod_USD_1.1.mq4


Так невнимательно нельзя писать коды :)

Вперед Comment("USDCADAsk = ",USDCADAsk); а за ним USDCADAsk = DoubleToString(MarketInfo("USDCAD",MODE_ASK),usdcaddigits); USDCADAsk объявлена как double а вы в нее стринг пихаете,

а дальше опять Digits.... ^) так еще и Point

Такие ошибки самому искать, никто за вас их исправлять не будет как и торговать! Компилятор выдает 28 ошибок а вы на торговлю, пусть и демо ставите. Остается только пожалеть что не на реал, вот тут бы вас рынок и поправил!.

 if (USDCHF){while(IsTradeContextBusy()){Sleep(10);}
                    RefreshRates();
                    Result[1] = OrderSend("USDCHF",OP_BUY,Lot,USDCHFAsk,slip,USDCHFAsk-NormalizeDouble(sl*Point,Digits),USDCHFAsk+NormalizeDouble(tp*Point,Digits),"USDCHF",magic[0],0,Red);
                    if (Result[1] < 0){Alert("Функция OpenOrders ","\n","Валютная пара "+"USDCHF","\n",
                    "Команда: открыть ордер Sell","\n", "Ответ сервера: " ,errors(GetLastError()) );}}
        if (USDJPY){while(IsTradeContextBusy()){Sleep(10);}
                    RefreshRates();
                    Result[2] = OrderSend("USDJPY",OP_BUY,Lot,USDJPYAsk,slip,USDJPYAsk-NormalizeDouble(sl*Point,Digits),USDJPYAsk+NormalizeDouble(tp*Point,Digits),"USDJPY",magic[0],0,Red);
                    if (Result[2] < 0){Alert("Функция OpenOrders ","\n","Валютная пара "+"USDJPY","\n", 
                    "Команда: открыть ордер Sell","\n", "Ответ сервера: " ,errors(GetLastError()) );}}

Чьи это Bid Ask ?

//-----------

void CloseOrders(){
      for (int i = OrdersTotal()-1; i>=0; i--){
         if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
             if (OrderMagicNumber() == magic[0]){
               if (USDBuySl || USDBuyTp){
                 while(IsTradeContextBusy()){Sleep(10);}
                 RefreshRates();
                 OrderClose(OrderTicket(),OrderLots(),Bid,slip,Blue);
               }
             }
   .................
        OrderClose(OrderTicket(),OrderLots(),Ask,slip,Blue);


Исправляйте

RefreshRates();
double bid=MarketInfo(OrderSymbol(),MODE_BID);
double ask=MarketInfo(OrderSymbol(),MODE_ASK);
OrderClose(OrderTicket(),OrderLots(),bid,slip,Blue);
.............
OrderClose(OrderTicket(),OrderLots(),ask,slip,Blue);
 
Помогите найти максимальное значение индикатора N за предыдущий день, через iCustom получаю данные и дальше тупик. Есть мысли что это делается через ArrayMaximum, но как значение

iCustom туда пристроить не пойму, пока другие варианты не лезут в голову.

Причина обращения: