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

 

neden satış girişi yok

giriş koşulları

f2=iForce(NULL, 0, 13,MODE_SMA,PRICE_CLOSE,1);
if (f2>0) // buy

{

Opn_B=true; // Критерий откр. Buy
}

if (f2<0) // sell

{

Opn_S=true; // Критерий откр. Sell }

Eğer sorarsan

rsi >50 satın al

rsi<50 satış

olması gerektiği gibi çalışıyor, bunlar hem satıyor hem de alıyor

 
Dimka-novitsek :
EA, gecikmeleri fiyattan 20 pp ile kaldırdığımda çalışmaya başladı, daha yakın değil! Ve komisyoncu sunucusundan 130 hatasının nereden geldiğini sormak istedim.

Evet, sunucular... sabit bir boyut iyidir, ancak MarketInfo'ya bakmak daha iyidir, şu anda bir durma seviyesi var, değişebilir. https://docs.mql4.com/en/constants/marketinfo

MODE_STOPLEVEL on dört Pip cinsinden izin verilen minimum zararı durdur/kar al seviyesi
 
Hatırlayacağım! (belki)
 

Beyler lütfen bana söyleyin .... İşte böyle bir problem var HESAP 5 ondalık hane terminal 5'te bir çift açık tank dağıtıyor, tüm siparişleri kapatmak için bir döngü kullanıyorum

ve sorun şu ki bu döngü siparişleri farklı fiyatlarla kapatıyor !!! 5 emir varsa, o zaman sadece 3 veya 2'si aynı fiyattan ve diğerleri farklı fiyattan kapanır... Tüm emirleri aynı fiyattan nasıl kapatabilirim????

 if (сумма по профиту всех сделок >= заданная сумма)

{

for (цикл перебора ордеров)

{

if (проверка на символ)

{

if (ордертип==бай)

{

закрыть ордера по БИД цене 

} 

if (ордертип==сел)

{

закрыть ордера по Аск цене 

}  

} 

} 

} 
 
SeALALex :

Çok teşekkür ederim, yeni öğreniyorum dedim, LotsInitial'e sorabilirsin- ne için? çünkü bir şekilde siparişleri doğru bir şekilde oluşturuyor, bu kadar büyük bir siparişin hangi prensiple açıldığını anlamak imkansız mı?

Sözlük sorunuza cevap verecektir. Hiç koda baktınız mı? Ne kadar süreliğine? Bu sizin kodunuzsa, eklenen 10 satırın anlamını anlamak sizin için zor olmayacaktır.


köylü :

neden satış girişi yok

giriş koşulları

f2=iForce(NULL, 0, 13,MODE_SMA,PRICE_CLOSE,1);
if (f2>0) // buy

{

Opn_B=true; // Критерий откр. Buy
}

if (f2<0) // sell

{

Opn_B=true; // Критерий откр. Buy
}

Eğer sorarsan

rsi >50 satın al

rsi<50 satış

olması gerektiği gibi çalışıyor, bunlar hem satıyor hem de alıyor

Ve burada SATIŞI nerede görüyorsunuz? :((


VOLDEMAR :

Beyler lütfen bana söyleyin .... İşte böyle bir problem var HESAP 5 ondalık hane terminal 5'te bir çift açık tank dağıtıyor, tüm siparişleri kapatmak için bir döngü kullanıyorum

ve sorun şu ki bu döngü siparişleri farklı fiyatlarla kapatıyor !!! 5 emir varsa, o zaman sadece 3 veya 2'si aynı fiyattan ve diğerleri farklı fiyattan kapanır... Tüm emirleri aynı fiyattan nasıl kapatabilirim????

Bir siparişi kapatmak zaman alır. Bu süre zarfında fiyat kolayca değişebilir. Cevap açık.


İnsanlar soru:

Aynı hesaba sahip bir terminal iki bilgisayarda çalışıyor. Örneğin farklı bilgisayarlardan aynı anda iki farklı siparişi kapatmaya çalışırsanız terminalin tepkisi ne olur? :)) "Alışveriş sonra meşgul."?

Bana bu durum aynı gibi görünse de aynı bilgisayarda iki terminal açıp bir hesaba bağlanırsanız ama artık emirleri senkronize olarak kapatmak mümkün olmayacak...

 

Soruyu tekrar edersem özür dilerim çünkü. Konunun geçmişinde bulamadım.

Her zaman siparişlerin kârıyla ilgili verileri kaydetmek için EA'ya ihtiyacım var.

Ve masada daha iyi.

Başlamak için işte kod:

 int h= FileOpen ( "test.txt" , FILE_BIN | FILE_WRITE );
   for ( int j= 0 ; j< OrdersTotal (); j++)         // По всем ордерам
  {
   if ( OrderSelect (j,SELECT_BY_POS)==true)   // Если есть следующ.
     {                                     
       double ТР =     OrderTakeProfit ();     // TakeProfit ордера
       double Profit= OrderProfit ();         // Прибыль по ордеру
       double Lots  = OrderLots ();           // Количество лотов
       //......Использование значений ТР и Profit в программе..... 
       FileWriteInteger (h,Profit,LONG_VALUE);
       FileWrite (h, "\n" );
       FileClose (h);
     }
  }     
Вопрос, а где создать файл? как лучше это все реализовать?
 
Max7, türkiye'nin neden olması gerektiği gibi çalışmadığını merak ediyorum, "0" kesişiminde olanlar, bir kez daha tekrarlıyorum rsi<>50 kriteri ile her şey yolunda gidiyor!
 
nuan :

Soruyu tekrar edersem özür dilerim çünkü. Konunun geçmişinde bulamadım.

Her zaman siparişlerin kârıyla ilgili verileri kaydetmek için EA'ya ihtiyacım var.

Ve masada daha iyi.

Başlamak için işte kod:

Dosyaya bir şey yazmak istemeden önce dosyayı oluşturuyoruz.

Her şey yazıldıktan sonra dosyayı kapatın.

Sizin durumunuzda init() ve deinit() işlevleri yapacaktır.


köylü :
Max7, türkiye'nin neden olması gerektiği gibi çalışmadığını merak ediyorum, "0" kesişiminde olanlar, bir kez daha tekrarlıyorum rsi<>50 kriteri ile her şey yolunda gidiyor!

Max7... Komik! :DD


Kuvvet İndeksi göstergesi harika çalışıyor. Daha önce yazılmış kodunuzu kontrol etseniz iyi olur.

 
Ben ordaydım, örnek verebilirsin ya da f-tion.
 
nuan :
Ben ordaydım, örnek verebilirsin ya da f-tion.

Evet, sorunuzu yanlış okudum! :)) Yukarıdaki cevap...

Kodunuz, dosyanın bir kez oluşturulacağını ve döngüdeki sipariş sayısı kadar kapatılacağını gösterir.

Ve eğer bu kod start() fonksiyonundaysa, o zaman bu sorun her tikte başına gelecektir! Ve FileOpen yürütüldükten sonra her seferinde dosyanız temizlenecek...

Ayrıca OrderSymbol(), OrderTicket(), OrderType() ve diğer isteğe bağlı bilgileri dosyaya yazmanız size zarar vermez. Aksi takdirde, OrderProfit()'i birbirinden nasıl ayırt edersiniz? Bunun için Excel'de kolayca açılan tablo şeklinde bir dosyaya ( FILE_CSV ) girmek daha iyidir.

Neden: