Temel sorular... - sayfa 2

 

Kendimi açıklamaya çalışacağım:

Diyelim ki 3 farklı sistemim var:

sistem 1 en iyi EUR/USD 1M grafiğinde çalışır.

sistem 2 en iyi EUR/USD 5M grafiğinde çalışır.

sistem 3 en iyi EUR/USD 1H grafiğinde çalışır.

Şimdi uzman danışmanımın grafik başına 1 pozisyon açmasını istiyorum ve daha fazlasını değil. Yani sadece sistem 1 için 1 pozisyon, sistem 2 için 1 pozisyon ve sistem 3 için 1 pozisyon açmak istiyorum.

Bir önceki çözümde sembol başına limit 1 pozisyon yazmıştınız ve şimdi grafik tipi başına 1 pozisyonu sınırlamak istiyorum...

 

. Yani sadece sistem 1 için 1 pozisyon, sistem 2 için 1 pozisyon ve sistem 3 için 1 pozisyon açmak istiyorum.

TAMAM

o zaman sistem başına MAGIC Number ile çalışırsınız

#property copyright "system 1"

#property link ""

#define MAGIC 01901

.

.

.

if ( ExistPosition() == False) {

OrderSend(Symbol(),op,Lots,pp,SLIPPAGE,ldStop,ldTake,lsComm,MAGIC,0,clOpen); // MAGIC = system 1

}

// if open 1 position only for system 1 MAGIC ?

bool ExistPosition() {

bool Exist=False;

for (int i=0; i<OrdersTotal(); i++) {

if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {

if (OrderSymbol()==Symbol() && OrderMagicNumber()==MAGIC) Exist=True;

}

}

return(Exist);

}

sistemlerini atarmısın

 

10x!

Belirli bir sistemim yok. Sadece bir örnekti.

MetaTrader'da yeniyim ve bu, sahip olduğum bazı temel soruydu ...

En kısa zamanda güzel şeyler yazacağım' yorum için buraya yükleyeceğim...

 

Mum başına bir ticaret nasıl yapılır?

Bir EA'ya ekleyebileceğim bir kod parçası olup olmadığını merak ediyordum, böylece mum başına yalnızca bir kez işlem görür.

Şimdiden teşekkürler

 
basza:
Bir EA'ya ekleyebileceğim bir kod parçası olup olmadığını merak ediyordum, böylece mum başına yalnızca bir kez işlem görür. Şimdiden teşekkürler

statik tarihsaat zamanöncesi;

if(timeprev==Zaman[0]) {

dönüş(0); //yalnızca yeni çubukta çalıştır

} else if (timeprev==0) {

timeprev=Zaman[0]; // grafiğe yeni eklendiyse hiçbir şey yapmayın

dönüş(0);

} başka {

timeprev=Zaman[0];

// burada çubuk işleme

}

 
ra300z:
statik tarihsaat zamanöncesi;

if(timeprev==Zaman[0]) {

dönüş(0); //yalnızca yeni çubukta çalıştır

} else if (timeprev==0) {

timeprev=Zaman[0]; // grafiğe yeni eklendiyse hiçbir şey yapmayın

dönüş(0);

} başka {

timeprev=Zaman[0];

// burada çubuk işleme

}

teşekkür ederim ra300z

 

Yüzde hedefi göster?

Merhaba

Bir adet içinde bir yorum şeklinde bir yüzde hedefi göstermeye çalışıyorum.

Mevcut bakiyeyi yorum olarak gösteren bu kod parçasına sahibim:

"Yüzde Hedefi: " + AccountBalance()"\n"

Ea başlangıcında aşağıdakilere sahibim:

extern int KarYüzdesi=25;

Şimdi yapmak istediğim şey : AccountBalance * ProfitPercentage ve sonuçları görüntülemek. Örneğin. 5675,69 $ * %25 = 1418,92 $ ve yalnızca 1418,69 $'ı gösterir.

Şimdiden teşekkürler

 

merhaba arkadaşlar....

1: EA'nın sadece bir kerelik persignal ticareti yapmasını nasıl sağlarım..(kod demek istiyorum)

örneğin ma cross EA... ma kesiştiğinde ve hedef 20 pip ile kapanacak ancak trend devam ettiğinde hızlı ma hala yavaş ma'nın üzerinde olduğu için başka bir ticaret açmaya çalışacak. sadece başka bir ticaret açması gerekiyor ma aşağı geçtiğinde.

hızlı ma > yavaş ma = sadece bir ticaret sinyaline ihtiyaç var

hızlı ma < yavaş ma = ayrıca yalnızca bir ticaret sinyaline ihtiyaç duyar

2: Geçitte zaman gecikmesi koymak için yine de var mı? Ben sadece pip ayrımının (ne derlerse denir) bir ticaret açıkken geçişten sonra belki 10-15 pip bekleyeceği anlamına geldiğini biliyorum.

sadece mq4 dilini öğrenmeye çalışan bir acemi :)

 

bir yol, EA'nın mevcut MA okumaları yerine geçmiş MA okumalarına bakmasını sağlamak olacaktır. Prensipte şöyle olurdu:

// Recognise past crossing (up or down)

if ( fast( past+1 ) slow( past ) )

then cmd = OP_BUY;

else if ( fast( past+1 ) >= slow( past+1 ) && fast( past ) < slow( past ) )

then cmd = OP_SELL;

else return;

// If processing reaches this point, then a trade decision of either OP_BUY

// or OP_SELL has been made, due to recognising a supporting MA crossing

// at "past" number of bars in history.

// Limit to only one trade in a direction

static int last_trade = -1;

if ( last_trade == cmd ) return;

last_trade = cmd;

// If processing reaches this point, then this processing is the first time

// that the supporting MA crossing is recognised.

Bu, geçişin meydana geldiği çubuğu izleyen "geçmiş" çubuk sayısında bir karar verir ve yalnızca geçişin ilk tespit edildiğinde bir ticarete izin verir.

 

kod için teşekkürler kardeşim...

Neden: