Nasıl kodlanır? - sayfa 126

 
IN10TION:
:: bunun için biraz daha anahtar kullandım... ama başka para birimleri için de kullanabilirsiniz, sadece EURUSD için ayarlandı... nedenini bilmiyorum, umarım daha iyi anlarsınız

Merhaba

Bu Ea forex_Nn_Ind_juna.ex4 göstergesine ihtiyacım var, bu göstergeye ihtiyacım var mı?

 

Lütfen Uyarılı EMA Göstergesini geçen Fiyata (Kapat) ihtiyacım var

Uyarılı bir göstergeye ihtiyacım var

Ayrı gösterge penceresinde olmalı ve sesli uyarıya sahip olmalıdır.

Renk değiştiren histogramda ihtiyacım var

çubuk uzunluğu=EMA(harici parametre)-kapat

barlengthnow<barlengthprevious ise, bar kırmızıdır

barlengthnow>barlengthprevious ise, bar yeşildir

barlengthnow=barlengthprevious ise, bar sarıdır

pic aşağıdaki çubukların örneğine bakın

çubuk kırmızıdan yeşile veya yeşilden kırmızıya değiştiğinde ve ayrıca çubuk sıfır çizgisini geçtiğinde harici parametre ayarlanırsa sesli uyarı vermelidir

Lütfen yardım edebilecek var mı?

teşekkürler

PipSqweez

 

Açık Çubuk Zamanını Değiştir

Merhaba,

Mevcut EA'm, bir göstergenin günlük zaman çerçevesine dayalı olarak alım/satım üretir. Bu, doğru koşullar sağlandığında saat 00:00'da işlemlerin açılmasına neden olur. Günlük zaman çerçevesinin başlangıç zamanını nasıl değiştirebilirim? Örneğin, şu anda günlük bar 00:00'da açılıyor ve 24:00'de kapanıyor. Barı farklı bir saatte açmam gerekiyor, yani 00:00 değil, 02:00 diyelim.

Herhangi bir yardım çok takdir edilecektir! Asıl amacım, işlemlerimi gün içine yaymak, bu yüzden her zaman aynı anda alım/satım yapmıyorum. Bu, daha fazla ticarete izin verir :)

 

selam beyler

Burada bir sorum var... Aşağıdakileri nasıl değiştirebilirim;

harici çift MaxLot = 1.50;

double max_lot = GetMaxLot(OP_BUY, OP_SELL);

if (max_lot >= MaxLot) lot = CalcHedgeLot( order_type );

(order_type)]: ", parti);

if (lot == -1) dönüş (lot);

lot = NormalizeDouble(lot, LotPrec);

if (lot > MaxLot) lot = MaxLot;

if (lot < MinLot) lot = MinLot;

dönüş (lot);

}double max_lot = GetMaxLot(OP_BUY, OP_SELL);

if (max_lot >= MaxLot) lot = CalcHedgeLot(order_type);

OP_BUY AND OP_SELL için yukarıdaki kontrol

soru: bunu herhangi bir OP_BUY VEYA herhangi bir OP_SELL olarak nasıl değiştiririm

takdir etmek

 

Yeni başlayan birine yardım etmek mi?

Bu EA'ya aşağıdaki parametreleri eklemeye çalışıyorum, ancak çalışmasını sağlamakta sorun yaşıyorum. Birisi kodlamaya yardımcı olabilir veya en azından bana nasıl kodlayacağımı gösterebilir. Herhangi bir yardım takdir edilecektir.

Kar almak

Kaybı durdurmak

İzleyen Durdurma

Maksimum Eşzamanlı işlemler

Teşekkürler!

//---- input parameters

extern double Lots=0.1;

extern int Slippage=5;

int MagicNum = 98760;

bool longPosOpened, shortPosOpened;

//+------------------------------------------------------------------+

//| expert initialization function |

//+------------------------------------------------------------------+

int init()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

//| expert deinitialization function |

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

//| expert start function |

//+------------------------------------------------------------------+

int start()

{

double crossup = iCustom(NULL , 0, "18_28Cross", 1,18,1,28,1,0, 1);

double crossdown = iCustom(NULL , 0, "18_28Cross", 1,18,1,28,1,1,1);

if (crossup != EMPTY_VALUE)

{

if (!PosOpened(OP_BUY))

{

CloseAllOpenAndPendingTrades();

OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,0,0,Symbol(),MagicNum,0);

}

}

else if(crossdown != EMPTY_VALUE)

{

if (!PosOpened(OP_SELL))

{

CloseAllOpenAndPendingTrades();

OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,0,0,Symbol(),MagicNum,0);

}

}

return(0);

}

//+------------------------------------------------------------------+

bool PosOpened(int orderType)

{

int total=OrdersTotal();

for(int cnt=0;cnt<total;cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderSymbol() == Symbol() && OrderType() == orderType)

{

return(true);

}

}

return(false);

}

void CloseAllOpenAndPendingTrades()

{

int total = OrdersTotal();

for(int i=total-1;i>=0;i--)

{

OrderSelect(i, SELECT_BY_POS);

if(Symbol() != OrderSymbol()) continue; // important! only close positions of current currency pair

int type = OrderType();

bool result = false;

switch(type)

{

//Close opened long positions

case OP_BUY : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 200);

break;

//Close opened short positions

case OP_SELL : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 200);

break;

//Close pending orders

case OP_BUYLIMIT :

case OP_BUYSTOP :

case OP_SELLLIMIT :

case OP_SELLSTOP : result = OrderDelete( OrderTicket() );

}

}

return(0);

}

 

*bump* 125. sayfadaki bir önceki yazım için. İstediğim parametreleri oraya koymadığımı yeni gördüm. Şimdi oradalar, bu yüzden yardım edebilecek biri varsa minnettar olurum!!

 

Bir kodlayıcıdan yardıma mı ihtiyacınız var..ryanklefas??

Nasıl kod yazılacağı hakkında hiçbir fikrim yok, sadece birkaç girdiye daha ihtiyacım var ve birleşik ea'ya eklenmiş ekstra bir göstergeye ihtiyacım var (ekli)

Eklenen girdiler:

daha fazla giriş seçeneği:

1. Yeni sinyali girin: doğru veya yanlış, eğer doğruysa, bir ticaret ortada veya sonunda değil, yalnızca yeni bir sinyalde gerçekleşir

2. hangi göstergeye girmek istediğimi seçme seçeneği

3. Pip miktarını kilitleyin

4. Karda x sayıda pip ile başlamak için takip eden durdurma seçeneği

Giriş ve çıkış seçeneklerinin yanı sıra onay için bir gösterge daha eklendi:

HMA göstergesi (ekli)

Kodlama yardımı için şimdiden teşekkürler,

Mike

Dosyalar:
hma.ex4  5 kb
 

@dan7567 - istediğin şey mümkün değil, MT mevcut broker zamanını kullanıyor ve bu değiştirilemez. Sos kodunuz varsa, imkansızı düşünmek yerine, işlemlerin açıldığı zamanı değiştirmek çok daha kolaydır...

@fireslayer26 - sl/tp kodu eklemek kolaydır - OrderSend() işlevine SL fiyatını dahil edin (AL - 'OrderOpenPrice() - SL_Pips * Point' varsayılarak) veya OrderModify() işleviyle zaten açık olan bir siparişi değiştirin. TP'ler için aynen. Sondaki durdurma biraz daha karmaşıktır, ancak bu işlevleri uygulayan kelimenin tam anlamıyla yüzlerce EA ücretsiz olarak mevcuttur...

@forexarchitect - istediğiniz şey mantıklı değil - ilk olarak, sağladığınız kod, önceden tanımlanmış sistem değişkenlerini (OP_BUY, OP_SELL, ilgilendiğiniz değerler görünür...) diğerine geçiren kısmi bir özel işlevdir. dahil etmediğiniz özel işlev ...

@litcons - kulağa hoş gelmiyor ama konu başlığı "nasıl kodlanır", oysa aslında bize hiç kod yazamayacağınızı ve pratik olarak sıfırdan sizin için bir EA kodlayacak birini aradığınızı söylüyorsunuz - belki "Kiralık kodlayıcılar" dizisi daha açıklayıcı olurdu ...

 

Yanlış konuya yazdığım için özür dilerim, göstergeleri inceleme için yüklemeliydim, daha mantıklı olurdu,

 

#özellik göstergeleriyle ilgili yardım

Başarısız bir "if" koşullu ifade kullanarak gösterge rengini değiştirmek için bir gösterge kodlamaya çalışıyorum.

if(PeakUp==True)

{

#property indicator_color4 Lime

}

if(PeakUp==True)

{

#property indicator_color3 CLR_NONE

}

if(PeakUp==False)

{

#property indicator_color4 CLR_NONE

}

if(PeakUp==False)

{

#property indicator_color3 Red

}

yardım edebilecek var mı??

Dave

<<<