[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 3. - sayfa 572

 
neisseria :
Madeni paraya, kartal alımına, kuyruk satışına dayalı bir danışman yaratmaya çalıştım. Ama çalışmıyor. Test ederken, pencerede yazılar belirir: Bir sipariş açarken, 131 hatası, uygulamaya baktım - bu doğru hacim değil. Yakından baktım ve herhangi bir hata bulamadım. Her yerde nokta var, bütün kısmı ayırmak için virgül değil. Bana yardım et lütfen. Dosyadaki kod.
Ve hesap lot 0.01'e izin veriyor mu? Belki minimum lot 0.1'dir?
 
neisseria :
Madeni paraya, kartal alımına, kuyruk satışına dayalı bir danışman yaratmaya çalıştım. Ama çalışmıyor. Test ederken, pencerede yazılar belirir: Bir sipariş açarken, 131 hatası, uygulamaya baktım - bu doğru hacim değil. Yakından baktım ve herhangi bir hata bulamadım. Her yerde nokta var, bütün kısmı ayırmak için virgül değil. Bana yardım et lütfen. Dosyadaki kod.


kullanmak:

MinLot= MarketInfo( symbol() ,MODE_MINLOT )// Minimum olası lot büyüklüğü

StepLot= MarketInfo( symbol(),MODE_STEPLOT )// Minimum lot değişim adımı

Parti >= MinLot olmalı ve Lot=NormalizeDouble(Lot,Dig); ile normalize edilmelidir.

burada Dig = Number_of_decimals StepLota, yani StepLot=0.01 - Dig=2 ... StepLot=0.1 - Dig=1 .....

Örneğin, MinLot=0.1 ve StepLot=0.01 ile:

Parti 0.1, 0.11, 0.12 vb. olabilir. Ancak 0.99, 0.98 ve hatta daha fazlası olamaz, bu nedenle 0.998,0.999, 0.111,0.101 olamaz.

 
Sepulca :


kullanmak:

MinLot= MarketInfo( symbol(),MODE_MINLOT )// Minimum olası lot büyüklüğü

StepLot= MarketInfo( symbol(),MODE_STEPLOT )// Minimum lot değişim adımı

Parti >= MinLot olmalı ve Lot=NormalizeDouble(Lot,Dig); ile normalize edilmelidir.

burada Dig = Number_of_decimals StepLota, yani StepLot=0.01 - Dig=2 ... StepLot=0.1 - Dig=1 .....

Örneğin, MinLot=0.1 ve StepLot=0.01 ile:

Parti 0.1, 0.11, 0.12 vb. olabilir. Ancak 0.99, 0.98 ve hatta daha fazlası olamaz, bu nedenle 0.998,0.999, 0.111,0.101 olamaz.


Örneğin, MinLot=0.1 ve StepLot=0.01 ile :

Parti 0.1, 0.11, 0.12 vb. olabilir. Ama 0.99, 0.98 olamaz

Evet, şey... gerçekten mi?

Partiyi minimum adımla 88 veya 89 kat artırır. Örneğin, sonraki her açılan pozisyonun lotu minimum bir adımla artırılmalıdır. Onlar. aptalca partiyi değiştirmenin minimum adımını önceki konumun partisine ekleyin. Açılan 98. pozisyonun lotu sırasıyla 0.98 olacak, 99. pozisyonun lotu minimum 0.98+0.01=0.99 artırılacaktır...

DC'nin bu kadar çok şeyin açılmasına izin vermeyeceğini düşünüyor musunuz?

 
artmedia70 :

Örneğin, MinLot=0.1 ve StepLot=0.01 ile :

Parti 0.1, 0.11, 0.12 vb. olabilir. Ama 0.99, 0.98 olamaz

Evet, şey... gerçekten mi?

88 veya 89 kat, partiyi minimum adımla arttırır. Örneğin, sonraki her açılan pozisyonun lotu minimum bir adımla artırılmalıdır. Onlar. aptalca partiyi değiştirmenin minimum adımını önceki konumun partisine ekleyin. Açılan 98. pozisyonun lotu sırasıyla 0.98 olacak, 99. pozisyonun lotu minimum 0.98+0.01=0.99 artırılacaktır...

DC'nin bu kadar çok açmanıza izin vermeyeceğini düşünüyor musunuz?


Kahretsin .... tabii ki yanlış. 0.09, 0.08 olamaz.

Ve aptalca ya da aptalca değil - danışmanı yazan kişiye kalmış.

 
kellin :
Hayır, tabii ki emir ile açmanız veya bir sonrakini veya aşağıdaki çubuklardan birini açmak için alış veya satış yapmanız gerekiyor. Evet ve ayrıca açılıştan puan sayısına göre atayarak sırayla kapatmayı planlıyorum.

Daha sonra (hafta sonu) burada bir piyasa emri açma kodunu yayınlayacağım - yeni bir mum açarken ya al ya da sat (seçtiğin gibi).
 
Sepulca :


kullanmak:

MinLot= MarketInfo( symbol(),MODE_MINLOT )// Minimum olası lot büyüklüğü

StepLot= MarketInfo( symbol(),MODE_STEPLOT )// Minimum lot değişim adımı

Parti >= MinLot olmalı ve Lot=NormalizeDouble(Lot,Dig); ile normalize edilmelidir.

burada Dig = Number_of_decimals StepLota, yani StepLot=0.01 - Dig=2 ... StepLot=0.1 - Dig=1 .....

Örneğin, MinLot=0.1 ve StepLot=0.01 ile:

Parti 0.1, 0.11, 0.12 vb. olabilir. Ancak 0.99, 0.98 ve hatta daha fazlası olamaz, bu nedenle 0.998,0.999, 0.111,0.101 olamaz.

Bu bilgiyi zaten biliyorum. Brokerımda minimum lot 0,01, adım 0,01'dir. Vicdanımı rahatlatmak için hem 0.1 hem de 1 lot olarak değiştirdim hiçbir şey çıkmıyor hata başka bir şey.
 

Bu arada, bu Expert Advisor'ı kullanmayı düşünmüyorum, sadece bir programlama dili öğreniyorum. Aslında, eğlenmek için, test cihazında nasıl çalışacağını görmeye karar verdim, sadece rastgele sayı üretecinin rastgele sayılar üretmediğini okudum, tekrar ettiğini söylüyorlar. Sorun sayının yanlış yazılmasında değil de algoritmada gibi görünüyor ama nedir?

 
TG :
Bir sorunla yardım edin.
Benim sorum baykuş martin, belirli bir sayıdan sonra dizleri açıyor, ancak yeni bir sihirle. Sinyal 1'de sihir = 1 ile bir veya üç sıra açtığı, ardından sinyal 2'deki bir sonraki diz eksi ile açıldığı ortaya çıktı, büyü 2 ile bir veya üç sıra açıyorum vb.
Her dizinin büyüsü ile 1-3 sıra gittiği ortaya çıktı.

Şimdi sorunun özü, örneğin döngüdeki her sihirbazın sırasını nasıl hesaplayacağız? böyle denedim

Ve öyle olsa bile:

 int Count() {
   int i, Сounts[ 100 ];
   
   for (i= 0 ; i< OrdersTotal (); i++) {
       if ( OrderSelect (i,SELECT_BY_POS)) {
         if ( OrderMagicNumber ()>Magic+ 100 )   continue ;
         if ( OrderType ()> 1 )                   continue ;
         Сounts[ OrderMagicNumber ()]++;
         }
      } //for 
   Comment ( 10 , Сounts[ 0 ] + "=" + Сounts[ 1 ] + "=" + Сounts[ 2 ]);
}

Kontrol etmedim, bu yüzden dizimin üzerine çizdim ...

 
artmedia70 :

Ve öyle olsa bile:

Kontrol etmedim, bu yüzden dizimin üzerine çizdim ...

yardımcı olmadın ama beni doğru cevaba ittin, zaten her şeyi yaptım, teşekkürler
 
Söylemek. bilen varsa, böyle bir soru: Her 0,5 saniyede bir döngülü bir komut dosyasına ihtiyacınız var. göstergelerin yeniden başlatılmasıyla mevcut grafikteki "Güncelle" düğmesine "bastı". WindowRedraw() ve Sleep (500) kullanarak döngülü bir komut dosyası oluşturmaya çalıştım, ancak göstergeler yeniden başlatılmadı.