Orders Execution
Indicators Used
0
Views
0
Downloads
0
Favorites
N7S_AO_772012_v1.0.3
//ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ//
//ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ//
//ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ//
//Ø Ø//
//Ø N7S_AO_194694_0.mq4 v.77.2012 Ø//
//Ø Hunter by profit Ø//
//Ø Balashiha S&N@yandex.ru Ø//
//Ø Version Desember 20, 2007 Ø//
//Ø Ø//
//ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ//
//ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ//
//ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ//
#property copyright "Copyright © 2007, Shooter777"
#property link "S7N@mail.ru"
#include <WinUser32.mqh>
#include <stderror.mqh>
#include <stdlib.mqh>
//------------------------------------------------------------------//
int HM_ALL = 2; //
int Trade = 1; //
//------------------------------------------------------------------//
extern bool Trd_Up_X = true; //
int HM_Up_X = 1; //
//------------------------------------------------------------------//
extern double tpx = 50;
extern double slx = 50;
extern int px = 10;
extern int x1 = 0;
extern int x2 = 0;
extern int x3 = 0;
extern int x4 = 0;
int tx = 0;
//------------------------------------------------------------------//
extern bool Trd_Dn_Y = true; //
int HM_Dn_Y = 1; //
//------------------------------------------------------------------//
extern double tpy = 50;
extern double sly = 50;
extern int py = 10;
extern int y1 = 0;
extern int y2 = 0;
extern int y3 = 0;
extern int y4 = 0;
int ty = 0;
//------------------------------------------------------------------//
extern string Text0="BTS F=1";
extern int F = 1; //
extern int pz = 10;
extern int z1 = 0;
extern int z2 = 0;
extern int z3 = 0;
extern int z4 = 0;
int tz = 0;
//------------------------------------------------------------------//
//------------------------------------------------------------------//
extern string Text1="Neyro G=4";
extern int G = 4; //
extern string Text2="XXXXXXXXXXXXX";
extern double tpX = 50;
extern double slX = 50;
extern int pX = 10;
extern int X1 = 0;
extern int X2 = 0;
extern int X3 = 0;
extern int X4 = 0;
int tX = 0;
//------------------------------------------------------------------//
extern string Text3="YYYYYYYYYYYYY";
extern double tpY = 50;
extern double slY = 50;
extern int pY = 10;
extern int Y1 = 0;
extern int Y2 = 0;
extern int Y3 = 0;
extern int Y4 = 0;
int tY = 0;
//------------------------------------------------------------------//
extern string Text4="ZZZZZZZZZZZZ";
extern int pZ = 10;
extern int Z1 = 0;
extern int Z2 = 0;
extern int Z3 = 0;
extern int Z4 = 0;
int tZ = 0;
//------------------------------------------------------------------//
//extern double lots = 5;
int mn;
extern int mnx1 = 772012055;
extern int mny1 = 772012155;
extern int mnX1 = 772012011;
extern int mnY1 = 772012111;
static int prvtm = 0;
static double sl = 10;
static double tp = 10;
#include <system_v2\registry_v1.0.0.mqh>
#include <system_v2\lots_v1.0.2.mqh>
#include <system_v2\filter_v1.0.5.mqh>
bool cm15=false;
bool cmH1=false;
bool cmH4=false;
int MMH1 ;
int MN ;
static int bu,sll;
int i;
int ticket = -1;
int total;int spread;
datetime LFB;
double prcptx1=0,prcpty1=0,prcptX1=0,prcptY1=0,prcptZ1=0;
static double Delta_G12 ;
double gdPointFactor = 1;
//QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ
//QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ
//+------------------------------------------------------------------+
//| expert init function |
//+------------------------------------------------------------------+
int init(){
MMH1 = Hour( );LFB = iTime(Symbol(), 0, 0);
lots_init();
gdPointFactor = 1;
if (MarketInfo(Symbol(), MODE_DIGITS) == 2 || MarketInfo(Symbol(), MODE_DIGITS) == 4){
gdPointFactor = 10;
}
init_filter(gdPointFactor);
}
string stringBoolean(bool bMode){
string lsText = "TRUE";
if (bMode == FALSE) {
lsText = "FALSE";
}
return(lsText);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{ //----
if (! IsTradeAllowed()) {again();return(0);}
//----
total = OrdersTotal();spread = MarketInfo(Symbol(), MODE_SPREAD);
//----
int iTm = iTime(Symbol(), 0, 0);if(LFB == iTm) return(0); LFB = iTime(Symbol(), 0, 0);
// iTest (); ôóíêöèÿ ïðè ðàáîòå ñ àâòîîïòèìèçàòîðîì
int MMM15 = MathMod(Minute( ) , 15);
if(cm15) {if(MMM15 == 0 ) {cm15 =false; trl();}} if(MMM15 !=0){cm15=true;}
if(Hour() != MMH1) {MMH1 = Hour( ); //Print ("H1");
prcptx1 = prcptrnAC(x1,x2,x3,x4,px,tx) ;
prcpty1 = prcptrnAC(y1,y2,y3,y4,py,ty) ;
prcptX1 = prcptrnAC(X1,X2,X3,X4,pX,tX) ;
prcptY1 = prcptrnAC(Y1,Y2,Y3,Y4,pY,tY) ;
prcptZ1 = prcptrnAC(Z1,Z2,Z3,Z4,pZ,tZ) ;
}
int MMH4 = MathMod(Hour( ) , 4);
if(cmH4) {if(MMH4 == 0 ) {cmH4 =false; //Print ("H4");
double iCusAO_1 = iAO(NULL, 240, 1);
double iCusAO_2 = iAO(NULL, 240, 2);
Delta_G12 = iCusAO_1 -iCusAO_2;
}}
if(MMH4 !=0){cmH4=true;}
startM1();
}
double BTS() {
if (prcptrnz1() > 0 || F==0)
{if (prcptx1 > 0 && Delta_G12>0) {sl = slx; tp = tpx*slx; mn= mnx1; return (1);}}
if (prcptrnz1() < 0 || F==0)
{if (prcpty1 > 0 && Delta_G12<0) {sl = sly; tp = tpy*sly; mn= mny1 ;return (-1);}}
return (0);}
//+ÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔ+
//| function PERCEPTRON - AC |
//+--------------------------------------------------------------------------------------+
double prcptrnAC(int q1,int q2,int q3,int q4,int pr,int at)
{double qw = ((q1-50)+((q2-50)*iA_C(pr)+(q3-50)*iA_C(2*pr)+(q4-50)*iA_C(3*pr))/iA_C(0));
if (MathAbs(qw)>at) return(qw);else return(0);}
//+--------------------------------------------------------------------------------------+
double iA_C (int pr)
{int tmfr=60; return(iAO(Symbol(), tmfr, pr));}
void again() {
prvtm = Time[1];
Sleep(30000);}
//+------------------------------------------------------------------+
//| Ñ÷èòàåì îðäåðà |
//| Ïàðàìåòðû: |
//| |
//+------------------------------------------------------------------+
void BuSll ( int pl, int OrdTp, int mgnmb) // pl-èñòî÷íèê 0-äåéñòâóþùèå 1- çàêðûòûå // OrdTp=òèï îðäåðà 1-ðûíî÷íûå(0è1) 3-LIMIT(2è3) 5-STOP(4è5)
{ switch(pl)
{case 0: bu=0; sll=0; int ChTpBu,ChTpSll; // Print (" OrdTp ",OrdTp); // âûáðàí ïîäñ÷åò B&S ðûíî÷íûõ îðäåðîâ
switch(OrdTp)
{case 1: ChTpBu=OP_BUY; ChTpSll =OP_SELL; break;
case 3: ChTpBu=OP_BUYSTOP; ChTpSll =OP_SELLSTOP; break;
case 5: ChTpBu=OP_BUYLIMIT;ChTpSll =OP_SELLLIMIT; break;}
for(int i=0;i<OrdersTotal();i++)
{OrderSelect(i, SELECT_BY_POS, MODE_TRADES); int OMN=OrderMagicNumber();
if(OrderType()==ChTpBu &&(OMN>=mgnmb && OMN<=mgnmb+99)){ bu++;}
if(OrderType()==ChTpSll &&(OMN>=mgnmb+100 && OMN<=mgnmb+199)){sll++;}
}break;
case 1: int pstv=0, ngtv=0; // âûáðàí àíàëèç èñòîðèè
Print ("Ïîäñ÷åò îðäåðîâ â èñòîðèè"); break;
}
}
double prcptrnz1() {double qz =(z1-50)*(Close[0]-Open[pz])+(z2-50)*(Open[pz]-Open[pz*2])
+(z3-50)*(Open[pz*2]-Open[pz*3])+(z4-50)*(Open[pz*3]-Open[pz*4]);return(qz);}
void trl(){
total= OrdersTotal(); spread = MarketInfo(Symbol(), MODE_SPREAD);
for( i = total - 1; i >= 0; i--)
{
OrderSelect(i, SELECT_BY_POS, MODE_TRADES); MN=OrderMagicNumber();
// check for symbol & magic number
if(OrderSymbol() == Symbol() && MN>= 772012000 && MN<=772012199)
{ if (MN==772012055) {sl = slx; tp = tpx*slx; mn= mnx1;}
if (MN==772012155) {sl = sly; tp = tpy*sly; mn= mny1;}
int prevticket = OrderTicket();
// long position is opened
if(OrderType() == OP_BUY)
{if(DayOfWeek( ) == 5 && Hour( ) >=22) { OrderClose(prevticket,OrderLots( ) ,Bid,3,Red);}
if(Bid > (OrderStopLoss() + (sl * 2 + spread) * Point))
{ if(BTS()< 0)
{ OrderClose(prevticket,OrderLots( ) ,Bid,3,Red);}
else
{ OrderModify(OrderTicket(), OrderOpenPrice(), Bid - sl * Point,0, 0, Blue);}
}
}
else
{if(DayOfWeek( ) == 5 && Hour( ) >=22) { OrderClose(prevticket,OrderLots( ) ,Ask,3,Blue);}
if(Ask < (OrderStopLoss() - (sl * 2 + spread) * Point))
{if(BTS() > 0)
{ OrderClose(prevticket,OrderLots( ) ,Ask,3,Blue);}
else
{ OrderModify(OrderTicket(), OrderOpenPrice(), Ask + sl * Point, 0, 0, Blue);}
}
}
// exit
return(0);
}
}
}
void startM1() {
ticket = -1;
RefreshRates();
if (start_filter() == FALSE){
return(0);
}
double ldLots = lots_start(AccountFreeMargin(), AccountEquity(), sl, HM_ALL, mn);
if (total < HM_ALL) {
BuSll (0,1,772012000);
// if( !(DayOfWeek( ) == 1 && Hour( ) <2) && !(DayOfWeek( ) == 5 && Hour( ) >=18)){
if (Trd_Up_X && VSR() > 0 && bu<HM_Up_X) {
Print ("bu ",bu);
OrderSend(Symbol(), OP_BUY, ldLots, Ask, 1, Bid - sl * Point, Bid + tp * Point, WindowExpertName(), mn, 0, Blue);
}
//OrderSend(Symbol(), OP_BUY, lots, Ask, 1, Bid - sl * Point, 0, WindowExpertName(), mn, 0, Green); }
if (Trd_Dn_Y && VSR() < 0 && sll<HM_Dn_Y) {
OrderSend(Symbol(), OP_SELL, ldLots, Bid, 1, Ask + sl * Point, Ask - tp * Point, WindowExpertName(), mn, 0, Red);
}
//OrderSend(Symbol(), OP_SELL, lots, Bid, 1, Ask + sl * Point, 0, WindowExpertName(), mn, 0, Red); }
//-- Exit --
// return(0);
// }
}
}
double VSR() { if(G==4){ if(prcptZ1>0){if(prcptX1>0){sl = slX; tp = tpX*slX; mn= mnX1;return ( 1);}}
else {if(prcptY1>0){sl = slY; tp = tpY*slY; mn= mnY1;return (-1);}}
return (BTS());}
if(G==3){ if(prcptY1>0){sl = slY; tp = tpY*slY; mn= mnY1;return (-1);}
else {return (BTS());}}
if(G==2){ if(prcptX1>0){sl = slX; tp = tpX*slX; mn= mnX1;return ( 1);}
else {return (BTS());}}
return (BTS());
}
Comments
Markdown Formatting Guide
# H1
## H2
### H3
**bold text**
*italicized text*
[title](https://www.example.com)

`code`
```
code block
```
> blockquote
- Item 1
- Item 2
1. First item
2. Second item
---