Çaydanlıktan gelen sorular - sayfa 131

 
GameOver :


forumda aramalar ( mql5 yardımında day_of_week, dayofweek ifadeleri için arama yapın hiçbir şey vermedi ..)

MQL5 Referansı / Standart Sabitler, Numaralandırmalar ve Yapılar / Veri Yapıları / Tarih Yapısı:

   int day_of_week;     // день недели (0-воскресенье, 1-понедельник, ... ,6-суббота)
 
Yedelkin :

Anlamaya çalışalım. CopyRates() işlevi için sondan bir önceki parametre

Onlar. kopyalanacak öğe sayısı. Tasarımınızda eleman sayısı sınırsızdır. Kabaca söylemek gerekirse, gerçek dışı :) Bu muhtemelen, işlem sırasında belleğin tükenene kadar sürekli olarak yeniden dağıtılmasıdır. TerminalInfoInteger ( TERMINAL_MAXBARS ) yerine daha spesifik bir değer kullanmayı deneyin: MQL5 Referansı / Zaman Serileri ve Göstergeler Erişimi / Çubuklar

Tamam teşekkürler!
genel olarak ne olduğu belirsizliğini koruyor, TerminalInfoInteger ( TERMINAL_MAXBARS );

..bu ... idi! ? :-))

aramayı kullanarak dizinle çalışmak hala daha uygundur. mql4'ten fonksiyonlar nasıl değiştirilir? yardım bile nereye kazılacağına dair ipuçları vermiyor.
Tabii ki, dili ezbere biliyorsanız - dizinde bulmak zor olmayacaktır - o zaman geçerli dizine gerek yoktur.
ancak bilmiyorsanız - ve/veya mql4'ten geçerseniz - referans kitabında arama yapmak gerçekten yardımcı olmaz (((

not mql5'e girmek 3'ten 4ku'ya olduğundan daha zordur ;-) kim ne derse desin.

 
GameOver :

Tamam teşekkürler!
genel olarak ne olduğu belirsizliğini koruyor, TerminalInfoInteger ( TERMINAL_MAXBARS );

..bu ... idi! ? :-))

Ve bu, örneğin, hangi derinlik göstergesi tamponlarının hesaplandığını bilmektir. Ayrıca, "ekonomik olmayan" bir programdan mı yoksa TERMINAL_MAXBARS değerinin aşırı belirtilmesinden mi kaynak taşması olduğunu anlamak için. TERMINAL_MAXBARS şimdilik yalnızca manuel olarak değiştirildiğinden, boyutunu kontrol edebilir ve gerekirse programınızın üçüncü taraf kullanıcılarına çıtayı düşürmelerini söyleyebilirsiniz.

Oyun Bitti :


aramayı kullanarak dizinle çalışmak hala daha uygundur. mql4'ten fonksiyonlar nasıl değiştirilir? yardım bile nereye kazılacağına dair ipuçları vermiyor.
Tabii ki, dili ezbere biliyorsanız - referans kitabında bulmak zor olmayacaktır - o zaman referans kitabına gerek yoktur.
ancak bilmiyorsanız - ve/veya mql4'ten geçerseniz - referans kitabında arama yapmak gerçekten yardımcı olmaz (((

Evet, aslında "day_of_week" arama kelimesini buldum. 7 referans arasında - ve yukarıda belirtilmiştir.

Oyun Bitti :


not mql5'e girmek 3'ten 4ku'ya olduğundan daha zordur ;-) kim ne derse desin.

Burada bir şey söyleyemem.

 
Yedelkin :

Ve bu, örneğin, hangi derinlik göstergesi tamponlarının hesaplandığını bilmektir. Ayrıca, "ekonomik olmayan" bir programdan mı yoksa TERMINAL_MAXBARS değerinin aşırı belirtilmesinden mi kaynak taşması olduğunu anlamak için. TERMINAL_MAXBARS şimdilik yalnızca manuel olarak değiştirildiğinden, boyutunu kontrol edebilir ve gerekirse programınızın üçüncü taraf kullanıcılarına çıtayı düşürmelerini söyleyebilirsiniz.

Evet, aslında "day_of_week" arama kelimesini buldum. 7 referans arasında - ve yukarıda belirtilmiştir.

Burada bir şey söyleyemem.

temiz, açık, belirgin. yani bir - indirilen çubukların sayısı, ikincisi - görüntülenenlerin sayısı. Bu kadar farklı bir özdeşliğin neden doğrudan ve basitçe Bars olduğu garip,
incir aracılığıyla ikinci nereden bilir.

yardım hakkında - Her şeyi gözden geçirecek sabrım yoktu, dahası dayOfWeek işlevinin kendisi için hiçbir şey bulunamadı ve ilk day_of_week bağlantıları için (tam olarak ne yazacağımı nasıl tahmin etmeliyim?) saçmalık, durumla alakasız :-)

O zaman başka bir sorum var, eğer istersen.

Göstergelerin nasıl çizileceği hakkında hiçbir şey bilmiyorum. herkes farklı yazmış, bir grup kod birbirine bağlı, boşluk görünmüyor.

asimilasyon için, üst ve alt gölgelerden ma yapmak ve ayrıca yumuşatma hesaplamak için kendi yöntemimi yapmak istiyorum.
ama başlangıç olarak, en azından standart olanları kendiniz uygulayın.
gibi? Dürüst olmak gerekirse beynim yanıyor. basit görünüyor, ancak soyutlamalar sizi mql4'ü özlüyor :-)))
biri açıklayabilir mi?

#property indicator_chart_window
#property indicator_buffers 1 
#property indicator_plots   1
#property indicator_type1   DRAW_LINE
#property indicator_color1  Red

input int iPeriod = 13; // период
input int iMode = 1; // тип сглаживания
input int iPrice = 5; // цена
input int iBars = 480; // количество баров для просчета, если это возможно в принципе ограничить

double iBuffer[]; 

void OnInit(){
   SetIndexBuffer(0, iBuffer, INDICATOR_DATA);
}

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime& time[],
                const double& open[],
                const double& high[],
                const double& low[],
                const double& close[],
                const long& tick_volume[],
                const long& volume[],
                const int& spread[])
{

//---- проверка количества баров на достаточность для расчёта
   if (rates_total < 2*iPeriod) return(0);

// ????? :-)

   return(rates_total);
}

double calcPrice(int type){
switch (type){
case 1: return(high); ??
case 1: return(high - fmax(open,close)); ??????
}

başlangıç açık))) ama sonra .....

şimdiden teşekkürler.

 

tünaydın!

Lütfen söyleyin, Rusya Federasyonu'nda FORTS ve MICEX üzerinde çalışmak için Metatrader'ı bir terminal olarak sağlayan herhangi bir komisyoncu var mı?

 
GameOver :

O zaman başka bir sorum var, eğer istersen.

Göstergelerin nasıl çizileceği hakkında hiçbir şey bilmiyorum. herkes farklı yazmış, bir grup kod birbirine bağlı, boşluk görünmüyor.

asimilasyon için, üst ve alt gölgelerden ma yapmak ve ayrıca yumuşatma hesaplamak için kendi yöntemimi yapmak istiyorum.
ama başlangıç olarak, en azından standart olanları kendiniz uygulayın.
gibi? Dürüst olmak gerekirse beynim yanıyor. basit görünüyor, ancak soyutlamalar sizi mql4'ü özlüyor :-)))
biri açıklayabilir mi?

başlangıç açık))) ama sonra .....

şimdiden teşekkürler.

Kodun içine girmeyi seviyorsanız, yapılacak en iyi şey yönlendiriciyi editörde => Göstergeler klasöründe => Örnekler klasöründe açmaktır. Aşağıda, include dosyaları kullanılmadan yazılmış çalışma göstergelerinin (ParabolicSAR, Custom Moving Average , vb.) kodlarını bulabilirsiniz. Biraz çalışın - çok şey netleşecek. Gerisi forumda açıklanacaktır. Birçok insan yabancı göstergeler yazmak için çok tembel.
 
Yedelkin :
Kodun içine girmeyi seviyorsanız, yapılacak en iyi şey yönlendiriciyi editörde => Göstergeler klasöründe => Örnekler klasöründe açmaktır. Aşağıda, include dosyaları kullanılmadan yazılmış çalışma göstergelerinin (ParabolicSAR, Custom Moving Average vb.) kodlarını bulabilirsiniz. Biraz çalışın - çok şey netleşecek. Gerisi forumda açıklanacaktır. Birçok insan yabancı göstergeler yazmak için çok tembel.

aşk o zaman aşk ) EĞER kod sezgisel ise .. Kod dağlarına bakıyorum - henüz net değil ((
"Örnek aç ve sıkılana kadar siktir git" gibi tavsiyeler ver, kendim yapabilirim))))) ama tavsiye istemedim, yardım için ..

Soruları netleştirmeye çalışacağım. örneğin, göstergenin yaklaşık iki biçimi.
İlk formda 4 parametre geçilir. başlama amacını netleştirin pls. neden birinci formda var da ikinci formda yok? bu isteğe bağlı olduğu anlamına mı geliyor?
neden o zaman? "anlamlı verilerin nereden başladığı"nın özü nedir, bu parametreyi bu kadar global yapmamızın fiziksel anlamı nedir?
ayrıca hesaplama dizisi hakkında bir soru - liste parametreler sekmesinde ayarlanır ve anladığım kadarıyla bu sadece ilk form için ve bu liste değişmedi mi? veya yine de dizilerinizi atabilir misiniz (yukarıdaki görev bağlamında - örneğin, bir orta boy gölgeler dizisi)? (gibi?)

ikinci form da net değil. Daha fazla olasılık var gibi görünüyor.
verileri ayarlarken ENUM_APPLIED_PRICE kullanabilirsiniz. Öte yandan, önceki bir gösterge verisi seçimi yoktur (birinci formdaki gibi). gibi?
tekrar - verilerinizi nasıl ayarlayabilirsiniz? dizini kapat, tamam, ama ondan ma nasıl hesaplanır?

   double newData[];
   double outBuffer[];

   for(i=limit;i<rates_total && !IsStopped();i++){
      newData[i]=(High[i]+fmax(Open[i],Close[i]))/2;
   }
// и дальше чего? как мне индикатор то заполнить используя iMA ? самому сглаживать вторым циклом? или что?
   outBuffer=????????????


Anlamıyorum (tüm örnekler standart verilere dayanmaktadır .. nasıl yapılacağı henüz net değil ((
bir yandan, belirli bir iMA() tanıtıcısı zaten onInit'te hazırlanıyor, ancak bunun için verileri henüz tanımlamadık, bunlar onCalculate'de tanımlandı ..
kısacası kafam karıştı (
raflarda açıkla, kim anlar.
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
 
GameOver :

"Örnek aç ve sıkılana kadar siktir git" gibi tavsiyeler ver, kendim yapabilirim))))) ama tavsiye istemedim, yardım için ..

Bu durumda, sadece deneyimimi paylaşıyorum. Anlaşılan sen kodun içine girmeyi benden daha az seviyorsun :) Oh peki.

Oyun Bitti :

Soruları netleştirmeye çalışacağım. örneğin, göstergenin yaklaşık iki biçimi.
İlk formda 4 parametre geçilir. başlama amacını netleştirin pls. neden birinci formda var da ikinci formda yok? bu isteğe bağlı olduğu anlamına mı geliyor?
neden o zaman? "anlamlı verilerin nereden başladığı"nın özü nedir, bu parametreyi bu kadar global yapmamızın fiziksel anlamı nedir?

Buraya bakın (başlangıç anahtar kelimesi ile bulunur - aramayı kullanın): MQL5 Referans / Özel Göstergeler

Oyun Bitti :


ayrıca hesaplama dizisi hakkında bir soru - liste parametreler sekmesinde ayarlanır ve anladığım kadarıyla bu sadece ilk form için ve bu liste değişmedi mi? veya yine de dizilerinizi atabilir misiniz (yukarıdaki görev bağlamında - örneğin, bir orta boy gölgeler dizisi)? (gibi?)

Başlamak için bkz. MQL5 Referansı / Dil Temelleri / Değişkenler / Giriş değişkenleri

Çalışmaya küresel yaklaşımla ilgili olarak: eğer ilgilendiğiniz soruların cevapları burada yoksa ve kodun içine girmekle pek ilgilenmiyorsanız, o zaman tek yapmanız gereken sitenin arama motoruna "yeni başlayanlar" kelimesini yazmaktır. "Makaleler" bölümünü seçin ve yeni başlayanlar için göstergeler hakkında makaleler arayın. Anlıyorum rahatsız edici görünüyor. Ancak ilgili birkaç makaleye baktıktan sonra önce basit bir çizgi çizebilir, ardından barın yüksek ve düşük değerleri arasında bir ortalama değerler çizgisi [(high[i]-low[i]/2)] çizebilirsiniz, o zaman en basit MA'yı kendiniz oluşturabilirsiniz ve sonunda planınızın gerçekleşmesine geleceksiniz.

Переход на новые рельсы: пользовательские индикаторы в MQL5
Переход на новые рельсы: пользовательские индикаторы в MQL5
  • 2009.11.23
  • Андрей
  • www.mql5.com
Я не буду перечислять все новые возможности и особенности нового терминала и языка. Их действительно много, и некоторые новинки вполне достойны освещения в отдельной статье. Вы не увидите здесь кода, написанного по принципам объектно-ориентированного программирования — это слишком серьезная тема для того, чтобы просто быть упомянутой в контексте как дополнительная вкусность для кодописателей. В этой статье остановимся подробней на индикаторах, их строении, отображении, видах, а также особенностях их написания по сравнению с MQL4.
 
Yedelkin :

Bu durumda, sadece deneyimimi paylaşıyorum. Anlaşılan sen kodun içine girmeyi benden daha az seviyorsun :) Oh peki.

Buraya bakın (başlangıç anahtar kelimesi ile bulunur - aramayı kullanın): MQL5 Referans / Özel Göstergeler

Başlamak için bkz. MQL5 Referansı / Dil Temelleri / Değişkenler / Giriş değişkenleri
1. daha az sevdiğimden değil. gerçi sanırım... Ne kadar hoşunuza gitti bilmiyorum - her şeyden önce ticaret yapmayı tercih ediyorum. ve kendi kendine yazma sadece yardımcı bir araçtır. ama buna fikirlerin kendisinden daha fazla enerji harcamanız gerekiyorsa ... o zaman muma değer mi?
ayy hiç içimi ısıtmıyor çok boş. Bu yüzden içindeki canavarlara soruyorum. bir örnek yazmak için.
kimse bir örnek yazamaz, ancak forumlarda herkes küstahça OOP'nin armut bombardımanı kadar kolay olduğunu ilan ediyor.

2. baktı. İkinci formda neden kullanılmadığını anlamadım (daha doğrusu neden birinci formda?). neyse, kullanıcı tarafından tanımlanır (sekmede tanımlı değil, değil mi?),
ilk formda giriş parametrelerini zorlamak için ne var? Bunun keyfi bir değişkenden farkı nedir?

3. baktı. Girdi parametrelerinin listesini nasıl ayarlayacağımı değil, verilerimde hesaplamanın nasıl uygulanacağını sordum. bu konuda bir kelime yok
 
GameOver :
ama forumlarda herkes küstahça OOP'nin armut bombardımanı kadar kolay olduğunu iddia ediyor.

Bunu kimse belirtmedi. çaba sarf etmek gerekecek.

Oyun Bitti :

2. baktı. İkinci formda neden kullanılmadığını anlamadım (daha doğrusu neden birinci formda?). neyse, kullanıcı tarafından tanımlanır (sekmede tanımlı değil, değil mi?),
ilk formda giriş parametrelerini zorlamak için ne var? Bunun keyfi bir değişkenden farkı nedir?

İyi bilmiyorum. Örnekten, başlamakla ilgili her şey benim için netleşti.

Oyun Bitti :
3. baktı. Hesaplamanın verilerime nasıl uygulanacağını sordum ve giriş parametreleri listesini nasıl ayarlayacağımı değil. bu konuda bir kelime yok

"Veriler nasıl ayarlanır?" sorusu vardı. yollardan birini gösterdim.

Başka bir göstergenin verilerini hesaplamakla ilgileniyorsanız, bu böyle yapılır. Önce kendi veri hesaplama yöntemiyle başka bir gösterge oluşturulur, ardından bu göstergenin tutacağı alınır ( MQL5 Referans / Teknik Göstergeler / iCustom ) ve bu tutamaç yeni göstergede zaten kullanılmaktadır. Örneğe yakından bakın. Örnekle ilgili sorularınız varsa -

Документация по MQL5: Технические индикаторы
Документация по MQL5: Технические индикаторы
  • www.mql5.com
Технические индикаторы - Документация по MQL5