"Optimizasyon. Birkaç Basit Fikir" makalesi için tartışma

 

Yeni makale Optimizasyon. Birkaç Basit Fikir yayınlandı:

Optimizasyon süreci, bilgisayarın veya MQL5 Bulut Ağı test aracılarının önemli kaynaklarını gerektirebilir. Bu makale, MetaTrader 5 Strateji Test Cihazının işini kolaylaştırmak ve geliştirmek için kullandığım bazı basit fikirleri içermektedir. Bu fikirleri belgelerden, forumlardan ve makalelerden aldım.

MQL5 eksiksiz bir zaman dilimi kümesi sağlar: M1, M2 , M3, M4,... H1, H2,... aylık grafiklere göre. Toplamda 21 zaman dilimi vardır. Ancak optimizasyon sürecinde, stratejimize en çok hangi zaman dilimlerinin uygun olduğunu bilmek istiyoruz - М1 ve М5 gibi kısa olanlar, orta olanlar - H2 ve H4 gibi veya uzun olanlar - D1 ve W1.

Başlangıçta bu seçenek çeşitliliğine ihtiyacımız yoktur. Her durumda, stratejinin М5 zaman diliminde etkili olduğunu kanıtlayabilirsek, optimizasyonun bir sonraki aşamasında М3 veya М6 üzerinde çalışıp çalışmayacağını kontrol edebiliriz.

Girdi parametresi olarak ENUM_TIMEFRAMES türünde bir değişken kullanırsak:

input ENUM_TIMEFRAMES marcoTF= PERIOD_M5; 

daha sonra Optimize Edici 21 optimizasyon varyasyonu sunacaktır. Bu miktara gerçekten ihtiyacımız var mı?

Standart zaman dilimi seçenekleri

Başlangıçta gerek yoktur. Optimizasyonu nasıl basitleştirebiliriz? İlk başta numaralandırmayı tanımlayabiliriz:

Yazar: Jose Miguel Soriano

 

Tanrım, ne kabus bir çeviri!

Acaba İspanyolcaya yapılan geri çeviriler de aynı mı?

Bu konuda bir şeyler yapılmalı.

 
Çeviri uyarlanmıştır. Yorum için teşekkürler!
 
İspanyol bir geliştiricide bir makale okumak büyük bir zevk.
Önerisi , giriş sürelerinin optimizasyonu için de geçerli olabilir mi? Eğer makaleyi iyi anladıysam. Elektronik programlamada göreceli olarak acemi olduğum için.
Selamlar ve teşekkürler
 
decolimper:
İspanyol bir geliştiricide bir makale okumak büyük bir zevk.
Önerisi , giriş sürelerinin optimizasyonu için de geçerli olabilir mi? Eğer makaleyi iyi anladıysam. Elektronik programlamada göreceli olarak acemi olduğum için.
Selamlar ve teşekkürler

Eğer İspanyol iseniz. İspanyolca konuşuyoruz.

Giriş dönemlerini optimize edip etmediğimi sorduğunuzu anlıyorum.

Sorun, koddaki tüm işlevlerin, EA'nın çalıştığı zaman dilimini size bildiren bir parametreye sahip olması gerektiğidir. PERIOD_CURRENT 'i varsayılan olarak bırakmak yeterli değildir, zaman periyodunu kullanan tüm fonksiyonlara EA'nın çalıştığı zaman dilimini saklayan global bir değişken (örneğin marcoTF) aktarmanız gerekir.

Benim kodum için EA'yı hangi grafikte yüklediğiniz önemli değil. Her zaman, daha sonra "marcoTF" olarak bildirilen giriş parametresinde belirttiğim çerçevede çalışır.

Eğer İspanyol iseniz... İspanyolca konuşun.

Giriş dönemlerini optimize edersem bu soruları anlıyorum.

Öyleyse öyle ve neden sorun şu; sorun, kodun tüm işlevlerinin EA'nın çalıştığı zaman dilimine rapor vermek için bir parametreye sahip olması gerektiğidir. PERIOD_CURRENT varsayılanını kullanamazsınız, zamanı kullanarak tüm işlevleri EA'nın çalıştığı zaman çerçevesini depolayan küresel bir değişken (örneğin marcoTF) geçiremezsiniz.

Kodum için EA'nın hangi grafik altında yüklendiği kayıtsızdır. Her zaman giriş parametresinde belirtilen çerçeve içinde çalışın, daha sonra "marcoTF" yi bilgilendirir.

[Silindi]  

Aslında ilginç... Ancak, tüccar tarafından deneyiminde seçilen parametrelere göre olağan optimizasyondan çok farklı değildir....

Ben daha çok optimize edilmiş parametrelerin EA ayarlarına otomatik olarak aktarılmasının mümkün olup olmadığı sorusuyla ilgileniyorum...

Yani, tüccar tarafından tanımlanan bir süre sonra Uzman Danışmanı otomatik olarak optimize etmek ve yeniden optimize etmek mümkün mü?

 
josemiguel1812:

Eğer İspanyol iseniz. İspanyolca konuşuyoruz.

Giriş dönemlerini optimize edip etmediğimi sorduğunuzu anlıyorum.

Sorun, koddaki tüm işlevlerin, EA'nın çalıştığı zaman dilimini size bildiren bir parametreye sahip olması gerektiğidir. PERIOD_CURRENT'i varsayılan olarak bırakmak yeterli değildir, zaman periyodunu kullanan tüm fonksiyonlara EA'nın çalıştığı zaman dilimini saklayan global bir değişken (örneğin marcoTF) aktarmanız gerekir.

Benim kodum için EA'yı hangi grafikte yüklediğiniz önemli değil. Her zaman, daha sonra "marcoTF" olarak bildirilen giriş parametresinde belirttiğim çerçevede çalışır.

Eğer İspanyol iseniz... İspanyolca konuşun.

Giriş dönemlerini optimize edersem bu soruları anlıyorum.

Öyleyse öyle ve neden sorun şu; sorun, kodun tüm işlevlerinin EA'nın çalıştığı zaman dilimine rapor vermek için bir parametreye sahip olması gerektiğidir. PERIOD_CURRENT varsayılanını kullanamazsınız, zamanı kullanarak tüm işlevleri EA'nın çalıştığı zaman çerçevesini depolayan küresel bir değişken (örneğin marcoTF) geçiremezsiniz.

Kodum için EA'nın hangi grafik altında yüklendiği kayıtsızdır. Her zaman giriş parametresinde belirtilen çerçeve içinde çalışın, daha sonra "marcoTF" yi bilgilendirir.

 
merhaba, Jose Miguel, sizinle posta yoluyla iletişime geçmek istiyorum, mümkün mü, saygılarımla
 
Çok iyi bir makale José! Sadece zaman dilimine göre değil, aynı zamanda varlıklara göre de optimizasyon yapmanın bir yolunu arıyordum. Girişiminiz için tebrikler!!!

Eğer ilgileniyorsanız, sizin için faydalı olabilecek bir önerim var. Bu şekilde optimize etmek ilginç olur mu?

Optimize edilecek harici parametreler:

Varlık sayısı: 1
Varlıklar: EURUSD

Veya

Varlık sayısı: 2
Varlıklar: EURUSD; USDJPY
veya
Varlık1: EURUSD
Varlık2: USDJPY

Vb.

Böylece varlık ve Varlık sayısı optimize edilir. Sizin durumunuzda, optimizasyon her varlık için ayrı ayrı mı yoksa aynı anda tüm varlıklar için bir kurulum mu yapılıyor?

Başka bir yol, EA'yı bir grafik üzerinde çalıştırır çalıştırmaz optimizasyonu otomatikleştirmek olacaktır. Yalnızca mum kapanışlarına göre çalışan EA'lar için (örneğin benim durumumda), Strateji Test Cihazı kullanmadan grafikteki mumlara göre optimizasyon yapmak mümkün olabilir mi?
 

Güzel bir makale. İlginçtir ki ben de sizinkine çok benzer çözümlerle bu sorunla karşılaştım. Bir başka ilginç çizgi de bu makalede sunulan "sanal" optimizasyondur:

https://www.mql5.com/en/articles/143

Her halükarda, programcının yalnızlığına karşı savaştığınız için teşekkürler :)

Adaptive Trading Systems and Their Use in the MetaTrader 5 Client Terminal
Adaptive Trading Systems and Their Use in the MetaTrader 5 Client Terminal
  • 2010.09.14
  • MetaQuotes Software Corp.
  • www.mql5.com
This article suggests a variant of an adaptive system that consists of many strategies, each of which performs its own "virtual" trade operations. Real trading is performed in accordance with the signals of a most profitable strategy at the moment. Thanks to using of the object-oriented approach, classes for working with data and trade classes of the Standard library, the architecture of the system appeared to be simple and scalable; now you can easily create and analyze the adaptive systems that include hundreds of trade strategies.
 
Jose:

Güzel bir makale. İlginçtir ki ben de sizinkine çok benzer çözümlerle bu sorunla karşılaştım. Bir başka ilginç çizgi de bu makalede sunulan "sanal" optimizasyondur:

https://www.mql5.com/en/articles/143

Her halükarda, programcının yalnızlığına karşı savaştığınız için teşekkürler :)

Yapısal programlama yapıyorum ve nesne yönelimli programlamayı iyi "okuyamıyorum".

Stratejinin kendisini anlamıyorum çünkü 0 mumunu açarken ne yapacağımı seçmek için 1 mumundaki tüm stratejilerin sanal sonucunu nasıl aldığını anlamıyorum. 100 mumunda (bugünden geçmişe numaralandırma), örneğin, bilinen geçmiş ve MT5 test sisteminin bana vereceği fiyatBID ile geleceğe "hareket ederek" 98 mumundaki sonucu tahmin edebilirsem.... ama mum1'de sanal sonucu nasıl tahmin edebilirim?