Orders Execution
Miscellaneous
0
Views
0
Downloads
0
Favorites
Profitability Reports
AUD/USD
Oct 2024 - Jan 2025
0.00 %
Total Trades
0
Won Trades
0
Lost trades
0
Win Rate
0.0 %
Expected payoff
0.00
Gross Profit
0.00
Gross Loss
0.00
Total Net Profit
0.00
-100%
-50%
0%
50%
100%
GBP/USD
Oct 2024 - Jan 2025
0.00 %
Total Trades
0
Won Trades
0
Lost trades
0
Win Rate
0.0 %
Expected payoff
0.00
Gross Profit
0.00
Gross Loss
0.00
Total Net Profit
0.00
-100%
-50%
0%
50%
100%
NZD/USD
Oct 2024 - Jan 2025
0.00 %
Total Trades
0
Won Trades
0
Lost trades
0
Win Rate
0.0 %
Expected payoff
0.00
Gross Profit
0.00
Gross Loss
0.00
Total Net Profit
0.00
-100%
-50%
0%
50%
100%
Fractal ZigZag Expert
//+------------------------------------------------------------------+
//| Fractal ZigZag Expert.mq4 |
//| ikovrigin |
//| This expert was made from a fractal zig zag indicator created |
//| by ikorigin expert, made by bobammax, use at your own risk, will|
//| work better on higher time frames,1 hour seems to be the best but|
//| it is your money.I'm not a programmer. |
//| bobammax |
//+------------------------------------------------------------------+
#property copyright "ikovrigin, bobammax"
#property link ""
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 Green
//---- input parameters
extern int Level = 2;
extern double TakeProfit = 25;
extern double Lots = 1;
extern double TrailingStop = 10;
extern double InitialStop = 20;
extern int slip = 0; //exits only
extern double lp = 300;
extern double sp = 30;
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle(0, DRAW_SECTION);
SetIndexBuffer(0, ExtMapBuffer1);
SetIndexEmptyValue(0, 0.0);
SetIndexStyle(1, DRAW_ARROW);
SetIndexBuffer(1, ExtMapBuffer2);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars = IndicatorCounted();
int PU, PD, Trend = 2;
PU = 0;
PD = 0;
double FU,FD,F;
FU=0;
FD=0;
int shift = Bars-Level;
int n;
//----
if(shift > Level)
shift = shift - Level - 1;
//----
if(counted_bars == 0)
while(shift > Level - 1)
{
ExtMapBuffer1[shift] = 0;
F = Low[shift];
//----
for(n = 1; n <= Level; n++)
{
if(Low[shift+n] < Low[shift] || Low[shift-n] < Low[shift])
F = 0;
}
if(F > 0)
{
if(FD != 0)
switch(Trend)
{
case 1: if(F < FD)
{
ExtMapBuffer1[PU] = FU;
Trend = 2;
}
break;
case 2: if(F > FD)
{
ExtMapBuffer1[PD] = FD;
Trend = 1;
if(PU >= PD)
{
FU = 0;
PU = 0;
}
}
break;
}
FD = F;
PD = shift;
ExtMapBuffer2[PD] = FD;
}
F = High[shift];
for(n = 1; n <= Level; n++)
{
if(High[shift+n] > High[shift] || High[shift-n] > High[shift])
F = 0;
}
if(F > 0)
{
if(FU != 0)
switch(Trend)
{
case 1: if(F < FU)
{
ExtMapBuffer1[PU] = FU;
Trend = 2;
if(PD >= PU)
{
FD = 0;
PD = 0;
}
}
break;
case 2: if(F > FU)
{
ExtMapBuffer1[PD] = FD;
Trend = 1;
}
break;
}
FU = F;
PU = shift;
ExtMapBuffer2[PU] = FU;
}
shift--;
}
if(Trend == 1)
ExtMapBuffer1[PU] = FU;
else
ExtMapBuffer1[PD] = FD;
// order section
int OrderForThisSymbol = 0;
for(int x = 0; x < OrdersTotal(); x++)
{
OrderSelect(x, SELECT_BY_POS, MODE_TRADES);
if(OrderSymbol() == Symbol())
OrderForThisSymbol++;
}//end for
if(Trend == 2 && OrderForThisSymbol == 0)
{
//Alert("Buy order triggered for "+Symbol()+" on the "+Period()+" minute chart.");
int BuyOrderTicket = OrderSend(Symbol(), OP_BUY, Lots, Ask, slip,
Ask - (InitialStop*Point), Ask + (TakeProfit*Point),
"Buy Order placed at " + CurTime(), 0, 0, Green);
}
if(Trend == 1 && OrderForThisSymbol == 0)
{
//Alert("Sell order triggered for "+Symbol()+" on the "+Period()+" minute chart.");
int SellOrderTicket = OrderSend(Symbol(), OP_SELL, Lots, Bid, slip,
Bid + (InitialStop*Point), Bid - (TakeProfit*Point),
"Sell Order placed at " + CurTime(), 0, 0, Red);
}
// ---------------- TRAILING STOP
if(TrailingStop > 0)
{
OrderSelect(0, SELECT_BY_POS, MODE_TRADES);
if((OrderType() == OP_BUY || OrderType() == OP_BUYSTOP) && (OrderSymbol() == Symbol()))
{
if(TrailingStop > 0)
{
if(Bid - OrderOpenPrice() > Point*TrailingStop)
{
if(OrderStopLoss() < Bid - Point*TrailingStop)
{
OrderModify(OrderTicket(), OrderOpenPrice(), Bid - Point*TrailingStop,
OrderTakeProfit(), 0, Aqua);
return(0);
}
}
}
}
if((OrderType() == OP_SELL || OrderType() == OP_SELLSTOP) && (OrderSymbol()==Symbol()))
{
if(TrailingStop > 0)
{
if((OrderOpenPrice() - Ask) > (Point*TrailingStop))
{
if(OrderStopLoss() == 0.0 || OrderStopLoss()>(Ask+Point*TrailingStop))
{
OrderModify(OrderTicket(), OrderOpenPrice(), Ask + Point*TrailingStop,
OrderTakeProfit(), 0, Aqua);
return(0);
}
}
}
}
}
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
---