Orders Execution
0
Views
0
Downloads
0
Favorites
BigP
//+------------------------------------------------------------------+
//| BigP.mq4 |
//| Copyright © 2009, MetaQuotes Software Corp. |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
#include <commonEA.mqh>
double maxValue = -999999999;
int MAGIC = 12;
int orderType ;
int decision () {
double x0 = iCustom (NULL,0,"ravi fx fisher",0,0);
double x1 = iCustom (NULL,0,"ravi fx fisher",0,1);
double x2 = iCustom (NULL,0,"ravi fx fisher",0,2);
double y0 = iCustom (NULL,0,"smAdxBars",0,0);
double y1 = iCustom (NULL,0,"smAdxBars",0,1);
double z0 = iCustom (NULL,0,"smAdxBars",1,0);
double z1 = iCustom (NULL,0,"smAdxBars",1,1);
double max0 = z0-y0 ;
double max1 = z1-y1 ;
/*
if ( max > maxValue ) {
maxValue = max;
// diffs();
}
*/
if ( calculateBuy(0.005) /*max0 > 0.0050 && max1 > 0.0050*/ ) return(1);
else return(0);
int adx = 0;
if ( y1 < z1 && y0 > z0 ) adx = 1;
if ( y1 > z1 && y0 > z0 ) adx = -1;
//if ( adx != 0 ) Print(" realmente atinginf ");
/*
if ( x0 > 0.09 && x1 < 0.09 && x2 < -0.09 ) {
// Print ( "buy " , adx );
return(1);
}
if ( x2 > 0.09 && x0 < -0.09 && x1 > -0.09 ) {
// Print ( "sell " , adx );
// diffs();
return(-1);
}
*/
// Comment ( x0 , " " , x1 , " " , y0 , " " , y1 , " " , z0 , " " , z1 );
}
bool calculateBuy (double value ) {
int pos = 0;
double vals[14];
int z = 0;
for(int i=1;i<14;i++) {
double x = iCustom (NULL,0,"smAdxBars",0,i); //azzul
double y = iCustom (NULL,0,"smAdxBars",1,i); //vermelho
double diff = y -x ;
if ( diff > 0 ) {
pos++;
}
else z =i;
if ( diff < 0 ) return(false);
if ( diff > value) return (false);
}
//Print("prob " , pos , " %" , z );
return(true);
}
void diffs (string str) {
// double vs[14];
for(int i=0;i<14;i++) {
double x = iCustom (NULL,0,"smAdxBars",0,i); //azzul
double y = iCustom (NULL,0,"smAdxBars",1,i); //vermelho
double diff = y -x ;
str = StringConcatenate(str , " , " , diff );
}
Print ( str ) ;
}
int init()
{
//----
//----
return(0);
}
double calculateDiff(int i) {
double y0 = iCustom (NULL,0,"smAdxBars",0,i);
double z0 = iCustom (NULL,0,"smAdxBars",1,i);
return ( z0 -y0 ) ;
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
Print ( " max " , maxValue ) ;
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
if ( !NewBar() ) return(0);
int decision = decision();
if ( OrdersTotal() > 0 ) {
if ( orderType == OP_BUY) {
double x0 = calculateDiff(0);
double x1 = calculateDiff(1);
double x2 = calculateDiff(2);
if ( x0 < x1 && x1 < x2 ) {
OrderClose(ticket,0.1,Bid,3,Red);
diffs("closebuy" );
}
}
if ( decision == 1 && orderType == OP_SELL ) {
OrderClose(ticket,0.1,Ask,3,Red);
diffs("closesell");
// diffs();
}
return(0);
}
if ( !canTrade() ) return(0);
if ( decision == 1 && (TimeCurrent() - lastOrder ) > (60*60*3 ) ) {
if ( OrdersTotal() == 0 ) {
//
// Print("buy " , y0 , " " , y1);
// Print("buy ", (x0 - y0)*1000 , " ==>" , l0, " =>", val);
ticket = OrderSend(Symbol(),OP_BUY, 0.1, Ask, 3, 0,0/*Ask+50*Point*/,"", MAGIC, 0, Red);
lastOrder = TimeCurrent();
diffs("buy");
orderType = OP_BUY;
}
}
else if ( decision == -1 && (TimeCurrent() - lastOrder ) > (60*60*3 ) ) {
if ( OrdersTotal() == 0 ) {
ticket = OrderSend(Symbol(),OP_SELL, 0.1, Bid, 3, 0,0,"", MAGIC, 0, Red);
lastOrder = TimeCurrent();
orderType = OP_SELL;
diffs("sell");
}
}
//----
//----
return(0);
}
//+------------------------------------------------------------------+
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
---