Вопросы от начинающих MQL4 MT4 MetaTrader 4 - страница 6

 

Добрый день

Помогите пожалуйста с совсем простым (вероятно) вопросом. Есть стандартная функция:

int  ArraySize(const void& array[]);

А что означает и как пользоваться этим вот "const void &" ? Даже простая попытка написать аналогичную функцию приводит к ошибке при компиляции:

int test(const void& array[]) {
    return ArraySize(array);
}

Ошибка компиляции: 'const' - illegal use of 'void' type

Как правильно использовать "const void &" при написании своего кода ? И можно ли вообще ?
 
mql4-2016:

Добрый день

Помогите пожалуйста с совсем простым (вероятно) вопросом. Есть стандартная функция:

int  ArraySize(const void& array[]);

А что означает и как пользоваться этим вот "const void &" ? Даже простая попытка написать аналогичную функцию приводит к ошибке при компиляции:

int test(const void& array[]) {
    return ArraySize(array);
}

Ошибка компиляции: 'const' - illegal use of 'void' type

Как правильно использовать "const void &" при написании своего кода ? И можно ли вообще ?

   Ни как.

----- 

Вот пробуйте скрипт,

думаю поймете.



double array[10];
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   Print("количество элементов = ",ArraySize(array));

//----------------или

   int size=ArraySize(array);

   Print("количество элементов = ",size);
  }
//+------------------------------------------------------------------+
 

Здравствуйте. Нужна отправка на api.binaryteam.ru из индикатора после алерта.  Какие строки нужно добавить в файл индикатора.mq4 , чтобы после алерта на адрес api.binaryteam.ru отправлялась строка вида  http://api.binaryteam.ru/?request=signal&key=12345472300af900f431234561234567&formname=risefall&type_account=demo&symbol=frxUSDCHF&duration=5m&amount=3&bet=CALL&source=metatrader.

Есть пример отправки для советников http://binaryteam.ru/addons/#api, при добавлении в  файл индикатора.mq4 строк 

extern  string url="http://api.binaryteam.ru/";

extern  double  bet=1;

extern int expiration=1;

extern string key = "12345472300af900f431234561234567" ;

extern string type_account = "demo";

extern bool Flag = false;

extern string bettype;

.....
int start() {

....

условие покупки {

.....

Alert("алерт индюка  -  BUY!!!");

bettype = "CALL";

      Print("направление ставки: ",bettype);

      Flag = true;

Print(BinaryTeam());

  }

условие продажи {

.....  

Alert(""алерт индюка  -   SELL!!!");

bettype = "PUT";

      Print("направление ставки: ",bettype);

      Flag = true;

Print(BinaryTeam());

  }

  }

bool BinaryTeam()

{

   char post[],result[];

   int res;

      string headers;

    //--- для работы с сервером необходимо добавить URL

   //--- в список разрешенных URL (Главное меню->Сервис->Настройки, вкладка "Советники"):

      string formname = "risefall";

   string symbol = "frx" + Symbol();

   string duration = IntegerToString(expiration) + "m";

   string amount = DoubleToString(bet);

  if(Flag==false)

   {

      Print("не задано направление торговли");

      return(false);

   }

  

   //--- пример: http://api.binaryteam.ru/?request=signal&key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&formname=risefall&type_account=demo&symbol=frxUSDCHF&duration=5m&amount=3&bet=CALL&source=metatrader

  

   //--- собираем строку для отправки

   string send = "?request=signal" +

         "&source=metatrader" +

         "&type_account=" + type_account +

         "&bet=" + bettype +

         "&formname=" + formname +

"&date_start=now" +

         "&symbol=" + symbol +

         "&duration=" + duration +

         "&barrier=0" +

         "&amount=" + amount +

         "&key=" + key;

  

   Print(send);

  

   ResetLastError();



   int timeout=5000;

   res = WebRequest("GET",url+send,NULL,NULL,timeout,post,0,result,headers);

   if(res==-1)

     {

      Print("Ошибка в WebRequest. Код ошибки  =",GetLastError());

      MessageBox("Необходимо добавить адрес '"+url+"' в список разрешенных URL во вкладке 'Советники'","Ошибка",MB_ICONINFORMATION);

     }

   else

     {

      Print(CharArrayToString(result));

      return(true);

     }

   Print("Непредвиденная ситуация");

   return(false);

}

  

пишет 2016.11.16 13:50:01.783 Ошибка в WebRequest. Код ошибки  =4060


 
Как привязать личный кабинет к учётной записи на форуме Альпари?
 
как передать запрос без функции WebRequest?
 
greeng2016:
как передать запрос без функции WebRequest?
Примерно так-же, как и отправить ордер без "OrderSend"
 
Какой язык программирования стоит изучать, чтобы программировать на mql4/mql5?
 
Timur1988:
Какой язык программирования стоит изучать, чтобы программировать на mql4/mql5?
Ответ уже содержится в самом вопросе. Оригинально.
 
Timur1988:
Какой язык программирования стоит изучать, чтобы программировать на mql4/mql5?
mql4/mql5 это чистый Си + дополнительные функции о которых легко найти информацию в справке
 
Vitaly Muzichenko:
Примерно так-же, как и отправить ордер без "OrderSend"
а как можно передать строку на веб-сайт не через WebRequest, а через WinApi?