Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 714
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
OnTradeTransaction kullanımıyla optimizasyon süresi garip bir şekilde değişti. 15M sistemi, çok basit, bir yıllık geçmiş, bir çalıştırma 0,3 - 0,4 saniye sürer.
Optimizasyonu başlattıktan sonra, ilk 200-300 çalıştırma bir saniyeden daha kısa bir hızda çalışır, sonrakiler 15-20 saniyeye kadar yavaşlar (50 kez!);
İşlemcinin aşırı ısınması ve daralması yok, belleğin yarısından fazlası boş (16 GB dışında).
OnTradeTransaction işleyicisini kullanmadan önce böyle bir şey yoktu - küçük zaman dilimlerinde daha karmaşık Uzman Danışmanlar yaklaşık olarak aynı hızda optimize edildi.
HistoryDealSelect hızı çok mu etkiliyor? Frenleri nasıl ortadan kaldırabilirsiniz?
const MqlTradeRequest &request,
const MqlTradeResult &result)
{
if ( trans.type != TRADE_TRANSACTION_DEAL_ADD ) return ;
ENUM_TRADE_TRANSACTION_TYPE type=trans.type;
long deal_type = 0 ;
double deal_volume = 0 ;
long deal_magic = 0 ;
if ( HistoryDealSelect (trans.deal))
{
deal_type = HistoryDealGetInteger (trans.deal, DEAL_TYPE );
deal_volume = HistoryDealGetDouble (trans.deal, DEAL_VOLUME );
deal_magic = HistoryDealGetInteger (trans.deal, DEAL_MAGIC );
}
else
return ;
if (deal_type == DEAL_TYPE_BUY && deal_magic == MagicNumber) current_position += deal_volume;
if (deal_type == DEAL_TYPE_SELL && deal_magic == MagicNumber) current_position -= deal_volume;
}
Hey!
Kim bilir - sıfır çubuğunun sağında yer alacak olan göstergedeki çubukların nasıl görüntüleneceği ve bunların kaç tanesi maksimumdur? (yapılacak fiyat tahmini)
HistoryDealSelect hızı çok mu etkiliyor? Frenleri nasıl ortadan kaldırabilirsiniz?
Geliştiriciler, geçmiş önbelleğe alma yoluyla Tarih işlevlerinin (pahalı) çağrısını en aza indirmeyi önerir.
Kod tabanında (MT4Orders) böyle bir çalışma çözümü yayınladım, ancak muhtemelen sizin için çalışmayacaktır.
Önbelleğe almayı kullandıktan sonra herhangi bir fren gözlemlemedim.
Tehdit Her ne kadar OnTradeTransaction'ınızda optimal olarak yazılmamış olsa da yavaşlamamalıdır.
Hey!
Kim bilir - sıfır çubuğunun sağında yer alacak olan göstergedeki çubukların nasıl görüntüleneceği ve bunların kaç tanesi maksimumdur? (yapılacak fiyat tahmini)
Son çubuğun açılış saatine PeriodSeconds() ekleyin ve orada grafik nesnelerle bir mum çizin. Sağda gördüğünüz kadar. Ama çıktı düşerse nasıl görüneceğini kontrol etmedim. Muhtemelen dikkate alınmalıdır.
Son çubuğun açılış saatine PeriodSeconds() ekleyin ve orada grafik nesnelerle bir mum çizin. Sağda gördüğünüz kadar. Ancak çıktı düşerse nasıl görüntüleneceğini kontrol etmedim. Muhtemelen dikkate alınmalıdır.
Grafikte devamını çiziyor ama maalesef indikatör penceresinde değil.
Belki yanılıyorum tabii...
Ne düşünüyorsunuz - sağdaki sıfır çubuğunun ötesinde gösterge çizgisine devam etmek mümkün mü?
Kim bilir - sağdaki sıfır çubuğunun ötesinde gösterge çizgisine devam etmek mümkün mü?
Yapabilir. Bir vardiya ayarlayabilirsiniz, ancak mevcut olmayan değerleri kullanarak bir hesaplama yapmak muhtemelen işe yaramaz ve göstergenin ekranında saat kullanılmaz. Bu yüzden çubukları grafik öğelerle göstermekten bahsettim. ObjectCreate() hem pencere (alt pencere) numarasını hem de saati içerir. Bu nedenle, grafik öğelerin oluşturulmasında herhangi bir sorun olmamalıdır.
Grafik penceresinde, zaman damgalarını kullanarak gelecekteki ima edilen çubuklara başvurabilirsiniz. Olmuş.
Ancak aynı işlemi gösterge penceresinde yapmak mümkün değildir. Yani, gösterge arabelleğine -1, -2 vb.
Soru şu.
Temelde anlaşılabilir. Çıkış yolu, grafik nesneleri kullanarak bir gösterge oluşturmaktır.
Grafik penceresinde, zaman damgalarını kullanarak gelecekteki ima edilen çubuklara başvurabilirsiniz. Olmuş.
Ancak aynı işlemi gösterge penceresinde yapmak mümkün değildir. Yani, gösterge arabelleğine -1, -2 vb.
Soru şu.
Temelde anlaşılabilir. Çıkış yolu, grafik nesneleri kullanarak bir gösterge oluşturmaktır.