Çaydanlıktan gelen sorular - sayfa 67

 
sergeev :

eleman sayısı bir sabit tarafından verilir

'elemanların sayısı önceden bilinmiyorsa, ArrayResize kullanın.

Bu, c++'ın temelleri

 const int elements= 4 ;
Eğer öyleyse, yardımcı olmadı.
 
x100intraday :
Eğer öyleyse, yardımcı olmadı.

 #define elements 4
 
sergeev :

Sayesinde.
 

Merhaba.

Lütfen bana MetaTrader 5'te mevcut siparişleri takip edebilmeniz için nasıl özel bir alan oluşturacağınızı söyler misiniz?

Ekli ekran görüntüsüne bakın.

Şimdiden teşekkürler.

Dosyalar:
uf2mcfxvni.JPG  285 kb
 
Dimm-ua :

Merhaba.

Lütfen bana MetaTrader 5'te mevcut siparişleri takip edebilmeniz için nasıl özel bir alan oluşturacağınızı söyler misiniz?

Ekli ekran görüntüsüne bakın.

Şimdiden teşekkürler.


"Araçlar" penceresi "Ticaret" sekmesi.
 
Karlson :
"Araçlar" penceresi "Ticaret" sekmesi.
Muhtemelen tam bir çaydanlığım ama öyle bir şey yok.
 
 
Karlson :

Tamam, çok teşekkürler - anladım
 

Geliştiricilere soru - bir pozisyonu tersine çevirmek bir pozisyonun açılış saatini değiştirir mi? Değilse, pozisyon dönüş süresi nasıl alınır?

Sadece iki istekte dönüş yapabileceğiniz ortaya çıktı - mevcut pozisyonu kapatın ve ters yönde yeni bir tane açın, o zaman pozisyon açılış süresi dönüş süresine eşit olacaktır. Ve tek bir istekle teslim ederseniz, PositionGetInteger işlevini kullanarak geri dönüş süresini alamayacak mısınız?...

 

Normal bir göstergenin en basit örneğini aldım - Fraktallar: https://www.mql5.com/ru/code/viewcode/30/5540/fractals.mq5 . Bunun gibi kod satırları var:

ExtUpperBuffer[i]=High[i];
ExtLowerBuffer[i]=Low[i];

Bu tamponlar double türündedir .

Sonra sadece fiyat verilerini (Yüksek ve Düşük) değil, aynı zamanda aşırı çubukların güncellenmiş HighTime ve LowTime'ını da (bildiğiniz gibi, M1 hariç tüm zaman dilimleri yaklaşık zaman değerlerine sahiptir, bu yüzden tam zamanı hesaplamak zorunda kaldım) daha sonra tamponlara eklemek ve gelecekte kullanmak için kendim için). Captain Obvious, datetime türünde uygun dizileri bildirmeniz ve ardından aynı şekilde doldurmanız gerektiğini önerir:

ExtUpperTimeBuffer[i]=exactTime[0]; // правая часть - элемент массива, вычисленный заранее
ExtLowerTimeBuffer[i]=exactTime[0]; // правая часть - элемент массива, вычисленный заранее

ve diğerinde:

ExtUpperTimeBuffer[i]= EMPTY_VALUE ;
ExtLowerTimeBuffer[i]= EMPTY_VALUE ;

ama ondan önce datetime yardımına gidiyoruz ve şunu buluyoruz:

" Tarih ve saat sabitleri ... " ve "... değişmez bir dize olarak gösterilebilir ". Ayrıca, bu tür dizileri gösterge arabellekleriyle ilişkilendirmenin bir yolu yok (ve buna ihtiyacımız yok?), Bilinen nedenlerle SetIndexBuffer'ı bu veri türündeki dizilere uygulayamıyoruz. Ve bağlanmıyoruz. Uzun süre düşünürüz, hiçbir şeyin korkunç görünmediği sonucuna varırız. Ortaya çıkan kodu derliyoruz. else içindeki = EMPTY_VALUE olan satırlar için " sabit değerin kesilmesi " uyarısı (ne yazık ki şaşırdık) ve Terminal Uzman Raporunda bir hata: " Array out of range " aynı satırlar için (üzgünüz). son). Görünüşe göre, EMPTY_VALUE tarih saat tipine yerleştirilmek istemiyor , böyle bir dizinin boyutu sıfır kalıyor. EMPTY_VALUE değerini 0 olarak değiştirin , hata kaybolur, ancak dizi boyutu hala sıfırdır. Başka bir şey de gariptir: ExtUpperBuffer ve ExtLowerBuffer arabelleklerinin boyutu sıfır değildir, bu da onların hala dolu oldukları, ancak fraktalların görünmediği anlamına gelir. Nasıl oluyor?

Beni ilgilendiren asıl şey şudur: Geçici arabellekleri doğrudan fiyatla aynı şekilde ( CopyTime ve diğer standart diziye kopyala işlevlerine başvurmadan) doldurmak mümkün müdür ve nasıl ve değilse neden olmasın? Bu amaç için, 1970'in başından beri saniyeleri depolamak için başka bir çift tampon oluşturmak gerçekten gerekli mi, ancak türde datetime değil, örneğin bir tür double veya long , ve gerekli anlarda TimeToString aracılığıyla TimeToString'e dönüştürün . değişmez bir dize olarak zaman biçimi ?

Not: ek Fractals.mq5 kodunu yeniden oluşturamayacak kadar tembel olan kim, bana hesaplanan belirli zaman verilerini nasıl sakladığınızı söyleyin (yerleşik göstergelerin tutamaçlarını çağırmadan ve onlarla çalışmadan)?

Teşekkür ederim.

Neden: