//+------------------------------------------------------------------+ //| SuperPosition.mq4 | //| @2009 Desynced Tech | //| http://desynced.no-ip.org/fx | //+------------------------------------------------------------------+ #property copyright "@2009 Desynced Tech" #property link "http://desynced.no-ip.org/fx" extern int MAGIC = 31; extern double lots = 0.1; extern int minHoursBetweenTrades = 0; #include <commonEA.mqh> //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } int decision() { //azul = slow = 4 //vermelho = fast = 3 double fast0 = iCustom(NULL, 0, "rsi_demarker_super_position",3,0); double fast1 = iCustom(NULL, 0, "rsi_demarker_super_position",3,1); double slow0 = iCustom(NULL, 0, "rsi_demarker_super_position",4,0); double slow1 = iCustom(NULL, 0, "rsi_demarker_super_position",4,1); double dem0 = iCustom(NULL, 0, "rsi_demarker_super_position",1,0); double dem1 = iCustom(NULL, 0, "rsi_demarker_super_position",1,1); double div0 = iCustom(NULL, 0, "rsi_demarker_super_position",5,0); // Print(fast0 , " ", fast1 , " " , slow0 , " " , slow1 ) ; if ( slow1 < fast1 && slow0 > fast0 && (TimeCurrent() - lastOrder) > (60*60*minHoursBetweenTrades) && div0 < 0 /*&& dem1 > fast1 && dem1 > slow1 && dem0 < fast0 && dem0 < slow0 */) { if ( div0 > 0.2 ) Print(fast0 , " ", fast1 , " " , slow0 , " " , slow1, " div " , div0 ) ; return(1); } if ( fast1 < slow1 && fast0 > slow0 && div0 > 0 && (TimeCurrent() - lastOrder) > (60*60*minHoursBetweenTrades)) return(-1); return (0); } int start() { getTrades(MAGIC); if ( orderTik != -1 ) { calculateProfit(orderTik,6); return(0); } else { lastOrder= checkTicket(orderTik); } if ( !canTrade() ) return(0); if(NewBar() == false ) return(0); int decision = decision(); if ( decision == -1 ) { //int openOrder(int orderType, double lots , int takeProfit , int stopLoss,int MAGIC ) orderTik= openOrder(OP_SELL, lots , 100 , 200 , MAGIC );// OrderSend(Symbol(),OP_SELL, lots, Bid, 3, 0, Bid-60*Point,"", MAGIC, 0, Red); if ( orderTik > 0 ) { /* mysql_connect("192.168.0.3","forex","forex","forex",3306); insertOrderDb(ticket,Symbol(),Bid,0, Bid-60*Point,MAGIC,"woodyEA",OP_SELL, TimeCurrent()); mysql_close(mysql); */ // lastOrder = TimeCurrent(); } } else if ( decision == 1 ) { orderTik= openOrder(OP_BUY, lots , 100 , 200 , MAGIC );// OrderSend(Symbol(),OP_SELL, lots, Bid, 3, 0, Bid-60*Point,"", MAGIC, 0, Red); } return(0); } //+------------------------------------------------------------------+
Sample
Analysis
Market Information Used:
Indicator Curves created:
Indicators Used:
Custom Indicators Used:
rsi_demarker_super_position
Order Management characteristics:
Other Features: