//+------------------------------------------------------------------+ //| Trend-Scalping.mq4 | //| Copyright © 2009, Jörg Cyriax | //| | //+------------------------------------------------------------------+ #property copyright "Copyright © 2009, Jörg Cyriax" #property link "" int MagicNumber=16091992; //---- input parameters extern double Lots=0.2; extern double GMT_Offset=2; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { string a=StringConcatenate("Scalp_",Symbol(),"_Bars"); GlobalVariableSet(a,0); return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } int trend() { double a=iCustom(NULL,0,"FantailVMA3",2,2.0,1,1,1); double b=iCustom(NULL,0,"FantailVMA3",2,2.0,8,1,1); double c=iCustom(NULL,0,"FantailVMA3",2,2.0,16,1,1); double d=iCustom(NULL,0,"FantailVMA3",2,2.0,26,1,1); double e=iCustom(NULL,0,"FantailVMA3",2,2.0,44,1,1); double f=iCustom(NULL,0,"FantailVMA3",2,2.0,58,1,1); double g=iCustom(NULL,0,"FantailVMA3",2,2.0,74,1,1); double h=iCustom(NULL,0,"FantailVMA3",2,2.0,86,1,1); double i=iCustom(NULL,0,"FantailVMA3",2,2.0,100,1,1); string name2=StringConcatenate("Scalp_",Symbol(),"_Trend"); if (a>b && b>c && c>d && d>e && e>f && f>g && g>h && h>i) GlobalVariableSet(name2,1); if (ab_1 && aa_1 && b pink_b) return(1); //BUY if (black_a > pink_a && black_b < pink_b) return(-1); //SELL //Nebensignal } int ordercheck() { for(int i=0 ; i <= OrdersTotal(); i++){ OrderSelect(i,SELECT_BY_POS,MODE_TRADES); if (OrderMagicNumber()==MagicNumber){ if (OrderType()==OP_BUY) return(OrderTicket()); if (OrderType()==OP_SELL) return((-1)*OrderTicket()); } } return(0); } // Schließen eine BUY-Order int schließen_buy() { double pink=iCustom(NULL,0,"FantailVMA3",2,2.0,26,1,0,1); if (Close[1]pink) return(1); } int zeit() { if ((TimeHour(TimeCurrent())-GMT_Offset)<9 || (TimeHour(TimeCurrent())-GMT_Offset)>=20) return(0); return(1); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { string name=StringConcatenate("Scalp_",Symbol(),"_Bars"); // Einmaliges Durchlaufen pro BAR if (GlobalVariableGet(name)==Bars) return(0); GlobalVariableSet(name,Bars); int a=ordercheck(); //SELL-Close? if (a<0 && schließen_sell()==1){ OrderClose(a*(-1),OrderLots(),Ask,3,Orange); } //BUY-Close? if (a>0 && schließen_buy()==1){ OrderClose(a,OrderLots(),Bid,3,Orange); } string name2=StringConcatenate("Scalp_",Symbol(),"_Trend"); // Trendkontrolle if (GlobalVariableGet(name2)==0) trend(); // Trend beendet? int Signal=signal(); if (GlobalVariableGet(name2)!=0 && Signal!=0){ GlobalVariableSet(name2,0); } // Einstieg(Pullback)? int b; int c=pullback(); if (c>0 && GlobalVariableGet(name2)==1) b=1; if (c<0 && GlobalVariableGet(name2)==-1) b=-1; Comment(GlobalVariableGet(name2),c); // Eröffnen der Order if (zeit()==1){ if (b==1){ OrderSend(Symbol(),OP_BUY,Lots,Bid,3,0,0,NULL,MagicNumber,0,DodgerBlue); b=0; } if (b==-1){ OrderSend(Symbol(),OP_SELL,Lots,Ask,3,0,0,NULL,MagicNumber,0,DeepPink); b=0; } } return(0); } //+------------------------------------------------------------------+