Вопрос к профессионалам: ООП и MQL4 - страница 4

 
Mudreishii:

Подскажите плиз


Тут я папробывал вставить - bool OrderClose(ticket1,0.1,Ask,0); - но мне вадало - 'OrderClose' - variable expected - я неправельно разместил ето.... или что я зделал не правельно?



int start()
{
//----
double Lots=0.1;
double SL;
double TP;
string Para=Symbol();
//----
SL=Bid -15*Point;
TP=Bid +20*Point;

int ticket1=OrderSend(Para,OP_BUY,Lots,Ask,0,SL,TP);
//bool OrderClose(ticket1,0.1,Ask,0);
OrderClose(ticket1,0.1,Ask,0);
Alert(GetLastError());

return(0);
}
 
ага.. типже же неуказуеться!!! Спосибо.
 

Vinin

Скапировал твой код и выдает - 4051    Недопустимое значение параметра функции...

Может я забыл какойто символ... 


int start()
{
//----
double Lots=0.1;
double SL;
double TP;
string Para=Symbol();
//----
SL=Bid -15*Point;
TP=Bid +20*Point;

int ticket1=OrderSend(Para,OP_BUY,Lots,Ask,0,SL,TP);
//bool OrderClose(ticket1,0.1,Ask,0);
OrderClose(ticket1,0.1,Ask,0);
Alert(GetLastError());

return(0);
}

 
Mudreishii:

Vinin

Скапировал твой код и выдает - 4051 Недопустимое значение параметра функции...

Может я забыл какойто символ...



Работает

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
{
//----
double Lots=0.1;
double SL;
double TP;
string Para=Symbol();
//----
SL=Bid -20*Point;
TP=Bid +20*Point;

int ticket1=OrderSend(Para,OP_BUY,Lots,Ask,15,SL,TP);
Print("OrderSend: ",GetLastError());
//bool OrderClose(ticket1,0.1,Ask,0);
if (ticket1>=0) {
   OrderSelect(0, SELECT_BY_POS);
   OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),15);
   Print("OrderClose: ",GetLastError());
}
return(0);
}

//---------------------------------------------------------------+
 
можно ли закодить вычисление масштаба сетки ганна, и как это сделать..?
 

Vinin

Можеш разьяснить немношко:

int ticket1=OrderSend(Para,OP_BUY,Lots,Ask,15,SL,TP);  - ну тут всё понятно

теперь  ticket1 принимает значение 1 и выполняеться ета штука

if (ticket1>=0) - так как условие истинное то выполняеться внутреняя часть

 OrderSelect(0, SELECT_BY_POS);  - а вот здесь немагу понять почему мы указуем index=0 ...если пазиция первая открыта то ана далжнаш быть под номером 1.. или как??

и вот здесь OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),15); - тоесть как я понял  OrderTicket() берёт номер тикета таво ордера каторый был указан в условии if... также и OrderLots() кол-во лотав берёться с етава тикета, а вот OrderClosePrice() тоесть как я понял он принимает значения Цены закрытия ордера.. но мы ведь неуказывали цену закрытия, стоплос да... но.......

Разьясни плиз 

 

Здравствуйте. Я только начинаю изучать язык программирования MQL4 по учебнику который представлен на этом сайте. В разделе основы языка-типы данных-color приведены следующие примеры:

color Paint_1 = C'128,128,128';       // Переменной присвоено значение серого   цвета
color Colo    = C'0x00,0x00,0xFF';    // Переменной присвоено значение синего   цвета
color BMP_4   = C'0xFF,0x33,0x00'     // Переменной присвоено значение красного цвета
 
color K_12  = 0xFF3300;               // Переменной присвоено значение красного цвета
color N_3   = 0x008000;               // Переменной присвоено значение зелёного цвета
color Color = 16777215;               // Переменной присвоено значение белого   цвета
color Alfa  = 32768;                  // Переменной присвоено значение зелёного цвета
 
color A       = Red;                  // Переменной присвоено значение красного цвета
color B       = Yellow;               // Переменной присвоено значение желтого  цвета
color Colorit = Black;                // Переменной присвоено значение черного  цвета
color B_21    = White;                // Переменной присвоено значение белого   цвета
Меня собственно интересует вот эта строчка:
color Alfa  = 32768;                  // Переменной присвоено значение зелёного цвета
Как программа определит какой это цвет??? Ведь, в отличии от предыдущей строчки, здесь несколько вариантов чтения. Кстати, по предыдущей строчки
color Color = 16777215;               // Переменной присвоено значение белого   цвета
Это, ведь не белый цвет(проверял в Paint )! Или может я что-то не так понял. Помогите пожалуйста разобраться!
 
VladimirR:

Здравствуйте. Я только начинаю изучать язык программирования MQL4 по учебнику который представлен на этом сайте. В разделе основы языка-типы данных-color приведены следующие примеры:

Меня собственно интересует вот эта строчка:
Как программа определит какой это цвет??? Ведь, в отличии от предыдущей строчки, здесь несколько вариантов чтения. Кстати, по предыдущей строчки
Это, ведь не белый цвет(проверял в Paint )! Или может я что-то не так понял. Помогите пожалуйста разобраться!



пользуйтесь лучше функцией RGB
 

У меня есть еще один вопрос к профессионалам. В том же учебники в разделе некоторые основные понятия-понятия комментария приведен такой пример:


С комментариями все понятно, но когда я начал изучать типы данных то вспомнил этот пример. Здесь в строчке

alpha= MathSqrt (alpha); //Гипотенуза

переменной, которая была описана как целочисленная, присваивают значение по своей сути являющееся действительным числом. Почему??? Заранее спасибо!

 
VladimirR:

переменной, которая была описана как целочисленная, присваивают значение по своей сути являющееся действительным числом. Почему??? Заранее спасибо!

а какие проблемы? ну получите округленное число, и всё. ошибки не будет.