Вопросы от "чайника" - страница 92

 
sergeev:
ну так перекладывайте. или переживаете что поддержку DLL отключат?
Переложить не проблема, главное чтобы было куда выложить. Сейчас сижу на четверки, и хочется подготовиться к моменту когда в datetime закончатся разряды :) или еще что-нибудь и останусь я со своей DLL у разбитого MT4 :)
 

Доброго времени суток.

надеюсь, что автор не против, что я напишу в его теме.

 я не умею писать коды для советников, поэтому вопрос: есть-ли желающие по моим мыслям и соображениям написать мне советник?

понимаю выглядит не очень, но для меня проблема насущная.

заранее всем откликнувшимся спс.

сообщением в личку или на filyaro@gmail.com 

 
fill:

Доброго времени суток.

надеюсь, что автор не против, что я напишу в его теме.

 я не умею писать коды для советников, поэтому вопрос: есть-ли желающие по моим мыслям и соображениям написать мне советник?

понимаю выглядит не очень, но для меня проблема насущная.

заранее всем откликнувшимся спс.

сообщением в личку или на filyaro@gmail.com 

вам сюда лучше https://www.mql5.com/ru/job
MQL5 работа
MQL5 работа
  • www.mql5.com
Заказы на разработку программ для трейдинга
 
sergey1294:
вам сюда лучше https://www.mql5.com/ru/job
спс за ответ.
 
220Volt:
Переложить не проблема, главное чтобы было куда выложить. Сейчас сижу на четверки, и хочется подготовиться к моменту когда в datetime закончатся разряды :) или еще что-нибудь и останусь я со своей DLL у разбитого MT4 :)

Ну об этом ещё рано думать

void OnStart()
  {
    // 2147483647 максимум int
    // 1321048620 текущая дата (41 год от старта)
    Print(2147483647/1321048620.*41);
  }

66.65 лет, время ещё есть подготовиться, а в пятёрке datetime вообще в ulong хранится.

 
Urain:

Ну об этом ещё рано думать

Действительно... что-то я погорячился
 
//falure swing, divergences/reversals, support/resistance lines, range shift (40-80 | 20-60), Cutler's RSI
#include <Trade\Trade.mqh>
CTrade Trade;
#include <Alphazavr\GetLotOnSTEPV.mqh>

input double                  Standart_tick_equity_percent_variation=   0.01;
input int                     RSI_sell_open_level=                      70;
input int                     RSI_buy_open_level=                       30;
input int                     RSI_buy_close=                            50;
input int                     RSI_sell_close=                           50;
input int                     RSI_EMA_averaging_period=                 14;
input ENUM_TIMEFRAMES         RSI_timeframe=                            PERIOD_M5;
input ENUM_APPLIED_PRICE      RSI_applied_price=                        PRICE_WEIGHTED;

double Lot=GetLotOnSTEPV(Standart_tick_equity_percent_variation);
int RSI_handle=iRSI(_Symbol,RSI_timeframe,RSI_EMA_averaging_period,RSI_applied_price);
double RSI_values[];
ArraySetAsSeries(RSI_values,true);
MqlRates Latest_rate[1];
void OnTick()
      {
      CopyRates(_Symbol,RSI_timeframe,0,1,Latest_rate);
      if(Latest_rate[0].tick_volume>1) return;
      CopyBuffer(RSI_handle,0,0,4,RSI_values);
      switch(PositionGetInteger(POSITION_TYPE))
            {
            case POSITION_TYPE_BUY:
                  if(RSI_values[0]<RSI_buy_close)
                        {
                        Trade.PositionClose(_Symbol,0);
                        }
                  break;
            case POSITION_TYPE_SELL:
                  if(RSI_values[0]>RSI_sell_close)
                        {
                        Trade.PositionClose(_Symbol,0);
                        }
                  break;
            }
      if(RSI_values[0]<RSI_values[1] && RSI_values[1]<RSI_values[2]/* && RSI_values[3]>RSI_sell_open_level && RSI_values[0]<RSI_sell_open_level*/)
            {
            Trade.PositionOpen(_Symbol,ORDER_TYPE_SELL,Lot,SymbolInfoDouble(_Symbol,SYMBOL_BID),0,0,NULL);
            }
      if(RSI_values[0]>RSI_values[1] && RSI_values[1]>RSI_values[2]/* && RSI_values[3]<RSI_buy_open_level && RSI_values[0]>RSI_buy_open_level*/)
            {
            Trade.PositionOpen(_Symbol,ORDER_TYPE_BUY,Lot,SymbolInfoDouble(_Symbol,SYMBOL_ASK),0,0,NULL);
            }
      }

Почему компилятор выдает ошибку:

'ArraySetAsSeries' - declaration without type RSI_tester.mq5 18 1

?

 
Alphazavr:

Почему компилятор выдает ошибку:

?

Эту операцию нельзя провести в глобальном скопе.
Проводите инициализацию в OnInit.
 

Спасибо. Теперь с этим же советником другая проблема. Когда оптимизируешь парамерты, терминал не делает сделок. Он делает их только при обычном тестировании (на том же временном интервале и с теми же параметрами как при тестах, проводимых в рамках оптимизации).

Проверил, что для других советников оптимизация работает нормально. Значит я снова косячу в чем-то. 

 
И еще, нафига терминал постоянно скачивает историю? Я тестирую на одной и той же паре, на одном и том же сервере, временный промежуток не включает последние несколько дней. Каждый раз как начинаю тестировать он скачивает полмегабайта примерно.
Причина обращения: