Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 1465

 
Alexey Belyakov #:

Kontrol edildi. İkinci durum iyidir, ancak her tarihi pencereye manuel olarak girme ihtiyacı nedeniyle uygun değildir, zaman alıcıdır. Basit olmalı... "ctrl-c, ctrl-v."

İlk durumda, bazı nedenlerden dolayı en son mumda 3 çizgi değil, sadece bir tane çiziyor. Neden, henüz net değil, araştırıyorum.

Hat adı benzersiz olmalıdır. Bu noktayı kaçırmışım

 

const string name="VLine,VLine2,VLine3", // hat adı

Satır adını benzersiz yaptım. Girişte de. Yardımcı olmuyor.

 
Alexey Belyakov #:

const string name="VLine,VLine2,VLine3", // hat adı

Satır adını benzersiz yaptım. Girişte de. Yardımcı olmuyor.

datetime time1 = D'2021.11.15 00:00:00';
datetime time2 = D'2022.11.15 00:00:00';
datetime time3 = D'2023.11.15 00:00:00';
// в этом случае так делаем
VLineCreate(0, "InpName1", 0, time1, InpColor, InpStyle, InpWidth, InpBack, InpSelection, InpHidden);
VLineCreate(0, "InpName2", 0, time2, InpColor, InpStyle, InpWidth, InpBack, InpSelection, InpHidden);
VLineCreate(0, "InpName3", 0, time3, InpColor, InpStyle, InpWidth, InpBack, InpSelection, InpHidden);

İsmi yanlış bir yere koymuşsunuz, öyle değil).

 
Alexey Belyakov #:

const string name="VLine,VLine2,VLine3", // hat adı

Satır adını benzersiz yaptım. Girişte de. Yardımcı olmuyor.

Burada, giriş parametreleri olmadan çalıştırın, doğrudan bu şekilde kopyalayın ve belki daha net hale gelecektir.

//+------------------------------------------------------------------+
//| Создает вертикальную линию                                       |
//+------------------------------------------------------------------+
bool VLineCreate(const long            chart_ID = 0,      // ID графика
                 const string          name = "VLine",    // имя линии
                 const int             sub_window = 0,    // номер подокна
                 datetime              time = 0,          // время линии
                 const color           clr = clrRed,      // цвет линии
                 const ENUM_LINE_STYLE style = STYLE_SOLID, // стиль линии
                 const int             width = 1,         // толщина линии
                 const bool            back = false,      // на заднем плане
                 const bool            selection = true,  // выделить для перемещений
                 const bool            hidden = true)     // скрыт в списке объектов

  {
   ObjectCreate(chart_ID, name, OBJ_VLINE, sub_window, time, 0);
//--- установим цвет линии
   ObjectSetInteger(chart_ID, name, OBJPROP_COLOR, clr);
//--- установим стиль отображения линии
   ObjectSetInteger(chart_ID, name, OBJPROP_STYLE, style);
//--- установим толщину линии
   ObjectSetInteger(chart_ID, name, OBJPROP_WIDTH, width);
//--- отобразим на переднем (false) или заднем (true) плане
   ObjectSetInteger(chart_ID, name, OBJPROP_BACK, back);
//--- включим (true) или отключим (false) режим перемещения линии мышью
//--- при создании графического объекта функцией ObjectCreate, по умолчанию объект
//--- нельзя выделить и перемещать. Внутри же этого метода параметр selection
//--- по умолчанию равен true, что позволяет выделять и перемещать этот объект
   ObjectSetInteger(chart_ID, name, OBJPROP_SELECTABLE, selection);
   ObjectSetInteger(chart_ID, name, OBJPROP_SELECTED, selection);

   return(true);
  }
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   datetime time1 = D'2023.06.26 10:00:00';
   datetime time2 = D'2023.06.26 11:00:00';
   datetime time3 = D'2023.06.26 12:00:00';
//--- создадим вертикальную линию
   VLineCreate(0, "Name1", 0, time1, clrBlue, STYLE_DASHDOTDOT);
   VLineCreate(0, "Name2", 0, time2, clrGreen, STYLE_SOLID, 5);
   VLineCreate(0, "Name3", 0, time3);
  }
//+------------------------------------------------------------------+
 
Aleksandr Slavskii #:

Burada, giriş parametreleri olmadan çalıştırın, doğrudan bu şekilde kopyalayın ve belki daha net hale gelecektir.


Çok teşekkür ederim! Tam ihtiyacım olan şey!

 

CTrade ticaret sınıfındaki Alım/Satım işlevleri şunlardır

İçlerinde bir fiyat belirtiyorum, ancak pozisyon hala Ask/Bid tarafından açılıyor.

Burada ne tür bir fiyat belirtebilirim?

 
Alexey Belyakov #:


Çok teşekkür ederim! Tam ihtiyacım olan şey!

benzersiz ad)

string  var1=TimeToStr(TimeCurrent(),TIME_DATE|TIME_SECONDS);
     string NameLine="VLine_" +  "_"+var1;
 
deerhunter22 CTrade ticaret sınıfındaki Alış/Satış işlevleri

İçlerinde bir fiyat belirtiyorum, ancak pozisyon hala Sor/Teklif ile açılıyor.

Burada ne tür bir fiyat belirtebilirim?

Diğer yöntemlere dikkat edin

   //--- additions methods
   bool              Buy(const double volume,const string symbol=NULL,double price=0.0,const double sl=0.0,const double tp=0.0,const string comment="");
   bool              Sell(const double volume,const string symbol=NULL,double price=0.0,const double sl=0.0,const double tp=0.0,const string comment="");
   bool              BuyLimit(const double volume,const double price,const string symbol=NULL,const double sl=0.0,const double tp=0.0,
                              const ENUM_ORDER_TYPE_TIME type_time=ORDER_TIME_GTC,const datetime expiration=0,const string comment="");
   bool              BuyStop(const double volume,const double price,const string symbol=NULL,const double sl=0.0,const double tp=0.0,
                             const ENUM_ORDER_TYPE_TIME type_time=ORDER_TIME_GTC,const datetime expiration=0,const string comment="");
   bool              SellLimit(const double volume,const double price,const string symbol=NULL,const double sl=0.0,const double tp=0.0,
                               const ENUM_ORDER_TYPE_TIME type_time=ORDER_TIME_GTC,const datetime expiration=0,const string comment="");
   bool              SellStop(const double volume,const double price,const string symbol=NULL,const double sl=0.0,const double tp=0.0,
                              const ENUM_ORDER_TYPE_TIME type_time=ORDER_TIME_GTC,const datetime expiration=0,const string comment="");
 
Alexey Viktorov #:

Diğer yöntemlere dikkat edin

Evet, onları biliyorum elbette ama başka şeyler için ihtiyacım var.... Her neyse, asıl mesele şu. Yakın zamanda binance'de işlem yapmaya başladım ve test etmek istedim. Çok sayıda kripto para birimi olan bir mutfak komisyoncusu da var, ancak spread karışıyor. Ve böylece teklifler binance teklifleriyle oldukça iyi eşleşiyor, özellikle de fiyatı (teklif + satış) / 2 olarak düşünürseniz.

Burada eşleşmeyi en üst düzeye çıkarmak istedim, ancak elbette bu tutarsızlıkları ihmal etmek mümkün olacak.

 
deerhunter22 #:

Evet, onları biliyorum ama peşinde olduğum şey bu değil. Her neyse, asıl mesele şu. Yakın zamanda binance'de işlem yapmaya başladım ve test etmek istedim. Çok sayıda kripto para birimine sahip bir mutfak komisyoncusu da var, ancak spread karışıyor. Ve böylece teklifler binance'inkilerle oldukça iyi eşleşiyor, özellikle de fiyatı (teklif + satış) / 2 olarak düşünürseniz.

Burada eşleşmeyi en üst düzeye çıkarmak istedim, ancak elbette bu tutarsızlıkları ihmal etmek mümkün olacaktır.

Belki kendi grafiğinizi oluşturmaya bakabilirsiniz. MQL5 buna izin verir.

Neden: