Örnek olarak.
void moveVLine( string obj_name, datetime obj_time) { int tm = PeriodSeconds ( PERIOD_D1 ); datetime next_day = obj_time + tm; MqlDateTime tm_str; TimeToStruct (next_day,tm_str); if (tm_str.day_of_week == 6 ) { tm *= 3 ; next_day = obj_time + tm; } ObjectMove ( 0 ,obj_name, 0 ,next_day, 0 ); return ; }
Örnek olarak.
Örneğinizi başlatacağım için sonucu tekrar yazacağım
Örnek olarak.
Anladığım kadarıyla kod bir parça ve bazı zorunlu bileşenler (#özellik vb.) eklemek gerekiyor mu?
Belirli bir zamanda sadece dikey bir çizgi çizen benzer bir gösterge buldum - önceden belirlenmiş statik bir zaman yerine gerekli algoritmaları ekleyerek onu temel almaya çalışacağım.
https://www.mql5.com/ru/code/18449

- www.mql5.com
Belirli bir zamanda bir çubuğa çizgi çeken bir kaynak kodu (yukarıdaki kod) vardır. Sadece giriş parametrelerinden zamanı çıkarmak ve işlem geçmişinden zaman değerini almak gerekir. Ticaret işlevlerinin belgelerine bakıyorum, gerçeğin Tarih grubunun işlevleri arasında bir yerde olduğundan şüpheleniyorum... Şimdiye kadar bir incir görüyorum :(
Birisi geçmişten son anlaşmaya ilişkin verilerin nasıl alınacağını önerebilir/önerebilir mi ( konum kapanış saati ve anlaşmadaki sabit sonuç)?
Örnek derlenmedi :(
Anladığım kadarıyla kod bir parça ve bazı zorunlu bileşenler (#özellik vb.) eklemek gerekiyor mu?
Bu, dikey çizgi çevirme işlevidir . Belirli koşullar sağlandığında ana koddan çağrılması gerekir. Ayrıca, hattın kendisi zaten olmalıdır.
Bu, dikey çizgi çevirme işlevidir . Belirli koşullar sağlandığında ana koddan çağrılması gerekir.
Merhaba!
Beyler, aşağıdaki fikrin MQL5'te nasıl uygulanacağını öneren/yardımcı olabilecek var mı (yakın zamanda Metatrader ile kendim tanıştım - henüz kod yazmıyorum).
Kod algoritması:
1) Son işlemin kapanış saati ve işlemin sonucu belirlenir.
2) Son işlemin kapanışından sonraki günün genel sonucu belirlenir.
3) Gösterge ayarlarına uygun olarak, son işlemin kapatıldığı andan itibaren gelecekte belirli aralıklarla dikey bir çizgi çizilir.
Ayarlar:
- son ticaretin sonucu negatifse ve günün sonucu negatifse, dikey çizgi geleceğe 24 saat (gün) uzaklıkta çizilir.
- son ticaretin sonucu negatifse ve günün sonucu pozitifse, dikey çizgi geleceğe 2 saat uzaklıkta çizilir.
- Son ticaretin sonucu pozitifse, geleceğe 1 saat uzaklıkta dikey bir çizgi çizilir.
4) Çizgi, yeni bir anlaşmanın açılmasından sonra grafikte kalır, ancak yeni bir anlaşmanın kapanmasından sonra yukarıdaki algoritmaya göre hareket eder, çünkü yeni anlaşma zaten son kapanan anlaşma oldu.
Not.
Olumlu bir sonuç bir artıdır, emrin işe yaraması veya pozisyonun manuel olarak kapatılması önemli değildir. Onlar. artı dengede.
Negatif bir sonuç, bir işlemin sonucu olarak eksi veya sıfırdır.
not>
Bu kodun benim için anlamı şudur - işlemlerden sonra ara vermeye alışın ve ateşi kırmayın. Eriklerimin başarısız anlaşmaları hızla geri kazanmaya çalıştığını fark ettim. Manuel olarak bir tire koyabileceğiniz ve açıklanan kurala göre hareket ettirebileceğiniz açıktır, ancak bir yazılım seçeneğine ihtiyacım var çünkü. gelecekte, göstergeye ek koşullar/filtreler bağlamak istiyorum, yani. karar verme algoritmasını karmaşık hale getirir.
Hepinize şimdiden teşekkürler ve iyi şanslar!
Gösterge, yani gösterge.
Öyle demek. İşlem geçmişini dakikada bir yokladığımızı tanımlayalım. Ardından, iki parametreye daha ihtiyaç vardır:
- En son işlemleri yalnızca mevcut sembol (göstergenin üzerinde çalıştığı sembol) veya tümü için mi dikkate alın?
- ve sihirli sayıyı hesaba katarak (yalnızca birini veya hepsini dikkate alın)?
Bir cevaba ihtiyacın var. Öğle yemeğine kadar bu başlıkta tekrar görünmeye çalışacağım.
Gösterge, yani gösterge.
Öyle demek. İşlem geçmişini dakikada bir yokladığımızı tanımlayalım. Ardından, iki parametreye daha ihtiyaç vardır:
- En son işlemleri yalnızca mevcut sembol (göstergenin üzerinde çalıştığı sembol) veya tümü için mi dikkate alın?
- ve sihirli sayıyı hesaba katarak (yalnızca birini veya hepsini dikkate alın)?
Bir cevaba ihtiyacın var. Öğle yemeğine kadar bu başlıkta tekrar görünmeye çalışacağım.
Vladimir, zaman ayırıp soruma cevap verdiğin için teşekkür ederim. Başlangıçta olabildiğince basit, çünkü Gelecekte onu kendim geliştirmeyi bekliyorum, bedavaya değil :)
- sadece mevcut karakter için
- sihirli sayı hakkında - Neyle yendiğini anladığımdan emin değilim. Bir çeşit kimlik mi? Dürüst olmak gerekirse benim için önemli değil. Yalnızca son bir kapalı anlaşma için veri gerekiyor
"Son anlaşma" terimini açıklığa kavuşturmak istiyorum.
Geçerli gün içindeki son ticareti aramanız mı gerekiyor? Yoksa son N-günler için mi?

- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Merhaba!
Beyler, aşağıdaki fikrin MQL5'te nasıl uygulanacağını öneren/yardımcı olabilecek var mı (yakın zamanda Metatrader ile kendim tanıştım - henüz kod yazmıyorum).
Kod algoritması:
1) Son işlemin kapanış saati ve işlemin sonucu belirlenir.
2) Son işlemin kapanışından sonraki günün genel sonucu belirlenir.
3) Gösterge ayarlarına uygun olarak, son işlemin kapatıldığı andan itibaren gelecekte belirli aralıklarla dikey bir çizgi çizilir.
Ayarlar:
- son ticaretin sonucu negatifse ve günün sonucu negatifse, dikey çizgi geleceğe 24 saat (gün) uzaklıkta çizilir.
- son ticaretin sonucu negatifse ve günün sonucu pozitifse, dikey çizgi geleceğe 2 saat uzaklıkta çizilir.
- Son ticaretin sonucu pozitifse, geleceğe 1 saat uzaklıkta dikey bir çizgi çizilir.
4) Çizgi, yeni bir anlaşmanın açılmasından sonra grafikte kalır, ancak yeni bir anlaşmanın kapanmasından sonra yukarıdaki algoritmaya göre hareket eder, çünkü yeni anlaşma zaten son kapanan anlaşma oldu.
Not.
Olumlu bir sonuç bir artıdır, emrin işe yaraması veya pozisyonun manuel olarak kapatılması önemli değildir. Onlar. artı dengede.
Negatif bir sonuç, bir işlemin sonucu olarak eksi veya sıfırdır.
not>
Bu kodun benim için anlamı şudur - işlemlerden sonra ara vermeye alışın ve ateşi kırmayın. Eriklerimin başarısız anlaşmaları hızla geri kazanmaya çalıştığını fark ettim. Manuel olarak bir tire koyabileceğiniz ve açıklanan kurala göre hareket ettirebileceğiniz açıktır, ancak bir yazılım seçeneğine ihtiyacım var çünkü. gelecekte, göstergeye ek koşullar/filtreler bağlamak istiyorum, yani. karar verme algoritmasını karmaşık hale getirir.
Hepinize şimdiden teşekkürler ve iyi şanslar!