EA-Antrag - Seite 2

 

ja BETA

Handelszeit ist ALPARI-Zeit !!!! (GTM+1)

#property copyright "Alex.Piech.FinGeR"

#property link "https://www.forex-tsd.com"

#define MAGIC 20051021

extern string PARAMETERS_TRADE = "PARAMETERS TRADE";

extern int SLIPPAGE = 3;

extern double Lots = 0.1;

extern int StopLoss = 10;

extern int TakeProfit = 35;

extern int JPYpair = 0;

extern bool useProfitTrailing = False;

extern int TrailingStop = 20;

extern int TrailingStep = 3;

extern string PARAMETERS_EXPERT = "PARAMETERS EXPERT";

extern bool UseOneAccount = False;

extern int NumberAccount = 0815;

extern string Name_Expert = "BETA";

extern bool UseSound = True;

extern string NameFileSound = "expert.wav";

extern color clOpenBuy = LightBlue;

extern color clOpenSell = LightCoral;

extern color clModifyBuy = Aqua;

extern color clModifySell = Tomato;

extern color clCloseBuy = Blue;

extern color clCloseSell = Red;

int prevBar;

void SetArrow(datetime t, double p, int k, color c) {

ObjectSet("Arrow", OBJPROP_TIME1 , t);

ObjectSet("Arrow", OBJPROP_PRICE1 , p);

ObjectSet("Arrow", OBJPROP_ARROWCODE, k);

ObjectSet("Arrow", OBJPROP_COLOR , c);

}

void deinit()

{

Comment("");

}

void start() {

SetArrow(Time[0],Low[0]-5*Point,241,Gold);

//bx=False;

//sx=False;

Comment("");

if (UseOneAccount && AccountNumber()!=NumberAccount) {

Comment("-UseOnAccount- Number"+AccountNumber()+" FAILED!");

return;

} else Comment("");

CheckForOpen();

CheckForClose();

if (useProfitTrailing) TrailingPositions();

}

void CheckForOpen() {

double ldStop=0, ldTake=0;

double close1=iClose(NULL,1440,1);

double high1=iHigh(NULL,1440,1);

double low1=iLow(NULL,1440,1);

double close=iClose(NULL,1440,0);

double high=iHigh(NULL,1440,0);

double low=iLow(NULL,1440,0);

double Pr = high1 + 1*Point;

double Pr2 = low1 - 1*Point;

int tradesignal2 = 0;

int tradesignal2s = 0;

if (JPYpair == 0)

double val2 = (Pr - (MathFloor(close1*100) /100))*10000;

else

val2 = (Pr - MathFloor(close1))*100;

if (val2 >= 15 && val2 <= 85) tradesignal2 = 1;

if (JPYpair == 0)

double val2a = (Pr2 - (MathFloor(close1*100) /100))*10000;

else

val2a = (Pr2 - MathFloor(close1))*100;

if (val2a >= 15 && val2a <= 85) tradesignal2s = 1;

int T=0;

if(Hour()== 23 && Minute() == 30) T=1;

if (!ExistPosition() && prevBar!=Bars) {

if (T==1 && tradesignal2 == 1 && (high1 - low1) >= 100*Point && (high1 - close1 ) >= 25*Point ) {

if (StopLoss!=0) ldStop=Pr-StopLoss*Point;

if (TakeProfit!=0) ldTake=Pr+TakeProfit*Point;

SetOrder(OP_BUYSTOP,Pr , ldStop, ldTake);

prevBar=Bars;

}

if (T== 1 && tradesignal2s == 1 && (high1 - low1) >= 100*Point && (close1 - low1) >= 25*Point ) {

if (StopLoss!=0) ldStop=Pr2+StopLoss*Point;

if (TakeProfit!=0) ldTake=Pr2-TakeProfit*Point;

SetOrder(OP_SELLSTOP, Pr2, ldStop, ldTake);

prevBar=Bars;

}

}

}

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

//| is MAGIC trade open ? |

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

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);

}

void SetOrder(int op, double pp, double ldStop, double ldTake) {

color clOpen;

string lsComm=GetCommentForOrder();

if (op==OP_BUYSTOP) clOpen=clOpenBuy; else clOpen=clOpenSell;

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

if (UseSound) PlaySound(NameFileSound);

}

string GetCommentForOrder() {

return(Name_Expert);

}

void TrailingPositions() {

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

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

if (OrderSymbol()==Symbol() && OrderMagicNumber()==MAGIC ) {

if (OrderType()==OP_BUY) {

if ((Bid-OrderOpenPrice())>TrailingStop*Point) {

if (OrderStopLoss()<Bid-(TrailingStop+TrailingStep-1)*Point) {

ModifyStopLoss(Bid-TrailingStop*Point, clModifyBuy);

}

}

}

if (OrderType()==OP_SELL) {

if (OrderOpenPrice()-Ask>TrailingStop*Point) {

if (OrderStopLoss()>Ask+(TrailingStop+TrailingStep-1)*Point || OrderStopLoss()==0) {

ModifyStopLoss(Ask+TrailingStop*Point, clModifySell);

}

}

}

}

}

}

}

void CheckForClose() {

bool fs=False;

bool fs1=False;

int T2=0;

if(Hour()== 13 && Minute() >= 45) T2=1;

if (T2==1){

fs1 = True;

fs = True;

}

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

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

if (OrderSymbol()==Symbol() && OrderMagicNumber()==MAGIC) {

if (OrderType()==OP_BUYSTOP && fs) {

OrderDelete(OrderTicket());

// OrderClose(OrderTicket(), Lots, Bid, SLIPPAGE, Aqua);

return;

}

if (OrderType()==OP_SELLSTOP && fs1) {

OrderDelete(OrderTicket());

// OrderClose(OrderTicket(), Lots, Ask, SLIPPAGE, Violet);

return;

}

}

}

}

}

void ModifyStopLoss(double ldStop, color clModify) {

bool fm;

double ldOpen=OrderOpenPrice();

double ldTake=OrderTakeProfit();

fm=OrderModify(OrderTicket(), ldOpen, ldStop, ldTake, 0, clModify);

if (fm && UseSound) PlaySound(NameFileSound);

}

 

hier EA

Dateien:
platinum.mq4  7 kb
 

Alex,

Welcher Zeitrahmen für Platimun und Beta?

 
Eric:
Sada, ich denke, er meint zum Beispiel:

Nicht kaufen, wenn der Kurs zwischen 1,1785 und 1,1799 liegt (weil es bei der "runden" Zahl - 1,1800 - Widerstand gibt und der Kurs wieder nach unten gehen könnte)

Verkaufen Sie nicht, wenn der Kurs bei 1,1715 bis 1,1701 liegt (denn bei der "runden" Zahl - 1,1700 - gibt es Unterstützung, und es könnte wieder nach oben gehen).

Aber ich könnte falsch liegen!

Eric, ich glaube, du irrst dich, er meint

Handeln Sie nicht kurz ODER lang, wenn der Preis 1,1685 bis 1,1715 ist, weil er annimmt, dass dies eine Zone der großen Unterstützung oder Widerstand ist.

xpie

 

Ich habe auto täglich D1 Chart alle Zeitrahmen

ja xpie ist alle Beta helfen Sie mir bitte

 

xpie, ja, es sieht so aus, als hätten Sie Recht - es gibt eine 30-Pip-"No-Trade-Zone" für Long- und Short-Positionen.

 
Alex.Piech.FinGeR:
ja BETA .

können Sie mir die gso schicken? Sie können sie per E-Mail an forextrash<--yahoo

 

Die ähnliche Strategie auf EasyDayTrader ist einsatzbereit. Probieren Sie es aus.

 
forex-experts:
Die ähnliche Strategie bei EasyDayTrader ist einsatzbereit. Probieren Sie es aus.

Vielleicht könnten Sie eine EXP oder EX4 Testversion (30 Tage?) des EA für uns zum Testen posten?

Andernfalls könnte man denken, dass Sie hier nur posten, um für Ihre kommerziellen EAs zu werben und nicht zum Nutzen der Forumsmitglieder... das nennt man doch kostenloses Spamming, oder? Nun, das wollen wir doch nicht, oder?

Hier ist ein Link, wo ich denke, dass Ihr zukünftiger "Werbe"-Post hingehört (kommerzieller EA):

https://www.mql5.com/en/forum/173061

Sada

Bearbeiten:

PS: mein Beitrag, nachdem ich ihn gelesen habe, klingt ein bisschen zu sarkastisch...sorry, wenn ich Sie beleidigt habe, aber ich bin wirklich daran interessiert, kommerzielle EAs zu testen.

 

Klarstellung

Ich denke, was er meint, ist, nur short zu gehen, wenn der Preis bei 80 oder darunter liegt, und long zu gehen, wenn er bei 20 oder darüber liegt, vorzugsweise bei/neben einem von beiden und nicht in der Mitte einer 100-Punkte-Zahl.