A trade alert for the attached Arbitrage MACD indicator.

MQL4 Göstergeler Uzmanlar Forex

Şartname

I am currently using the attached Arbitrage MACD indicator. However, there are no signal alerts associated with this indicator.

I would like to receive notifications on my android device  the bar after a blue long arrow appears and the bar after a red short arrow appears.




This is the current code:

//+------------+-----------------------------------------------------+

//| v.22.04.07 |                                         ArrZZx2.mq4 |

//+------------+                                                     |

//|------------|              Bookkeeper, 2007, yuzefovich@gmail.com |

//+------------+-----------------------------------------------------+

#property copyright ""

#property link      "http://www.forexter.land.ru/indicators.htm"

//----

#property indicator_chart_window

#property indicator_buffers 8

#property indicator_color1  Yellow

#property indicator_color2  RoyalBlue

#property indicator_color3  Blue

#property indicator_color4  Blue

#property indicator_color5  Blue

#property indicator_color6  Red

#property indicator_color7  Blue

#property indicator_color8  Red

//--------------------------------------------------------------------

extern int    SR     =3;  // =3..4

extern int    SRZZ   =12; // =4..12..20

extern int    MainRZZ=20; // =12..20..54...

extern int    FP     =21;

extern int    SMF    =3;  // =1..5

extern bool   DrawZZ =false;

extern int    PriceConst=0; // 0 - Close

                            // 1 - Open

                            // 2 - High

                            // 3 - Low

                            // 4 - (H+L)/2

                            // 5 - (H+L+C)/3

                            // 6 - (H+L+2*C)/4

//extern string Prefix="ArrZZx2"; 

//--------------------------------------------------------------------

double        Lmt[];

double        LZZ[];

double        SA[];

double        SM[];

double        Up[];

double        Dn[];

double        pUp[];

double        pDn[];

//---------------------------------------------------------------------

int LTF[6]={0,0,0,0,0,0},STF[5]={0,0,0,0,0}; 

int MaxBar, nSBZZ, nLBZZ, SBZZ, LBZZ;

bool First=true;

int prevBars=0;

//---------------------------------------------------------------------

void MainCalculation(int Pos) {

if((Bars-Pos)>(SR+1)) SACalc(Pos); else SA[Pos]=0; 

if((Bars-Pos)>(FP+SR+2)) SMCalc(Pos); else SM[Pos]=0; return; }

//---------------------------------------------------------------------

void SACalc(int Pos) { int sw, i, w, ww, Shift; double sum; 

switch(PriceConst) {

case  0: 

  SA[Pos]=iMA(NULL,0,SR+1,0,MODE_LWMA,PRICE_CLOSE,Pos);

  break;

case  1: 

  SA[Pos]=iMA(NULL,0,SR+1,0,MODE_LWMA,PRICE_OPEN,Pos);

  break;

/*case  2: 

  SA[Pos]=iMA(NULL,0,SR+1,0,MODE_LWMA,PRICE_HIGH,Pos);

  break;

case  3: 

  SA[Pos]=iMA(NULL,0,SR+1,0,MODE_LWMA,PRICE_LOW,Pos);

  break;*/

case  4: 

  SA[Pos]=iMA(NULL,0,SR+1,0,MODE_LWMA,PRICE_MEDIAN,Pos);

  break;

case  5: 

  SA[Pos]=iMA(NULL,0,SR+1,0,MODE_LWMA,PRICE_TYPICAL,Pos);

  break;

case  6: 

  SA[Pos]=iMA(NULL,0,SR+1,0,MODE_LWMA,PRICE_WEIGHTED,Pos);

  break;

default: 

  SA[Pos]=iMA(NULL,0,SR+1,0,MODE_LWMA,PRICE_OPEN,Pos);

  break; }

for(Shift=Pos+SR+2;Shift>Pos;Shift--) { sum=0.0; sw=0; i=0; w=Shift+SR;

ww=Shift-SR; if(ww<Pos) ww=Pos;

while(w>=Shift) {i++; sum=sum+i*SnakePrice(w); sw=sw+i; w--; }

while(w>=ww) { i--; sum=sum+i*SnakePrice(w); sw=sw+i; w--; }

SA[Shift]=sum/sw; } return; }

//----

double SnakePrice(int Shift) {

switch(PriceConst) {

   case  0: return(Close[Shift]);

   case  1: return(Open[Shift]);

   /*case  2: return(High[Shift]);

   case  3: return(Low[Shift]);*/

   case  4: return((High[Shift]+Low[Shift])/2);

   case  5: return((Close[Shift]+High[Shift]+Low[Shift])/3);

   case  6: return((2*Close[Shift]+High[Shift]+Low[Shift])/4);

   default: return(Open[Shift]); } }

//---------------------------------------------------------------------

void SMCalc(int i) { double t, b;

for(int Shift=i+SR+2;Shift>=i;Shift--) {

t=SA[ArrayMaximum(SA,FP,Shift)]; b=SA[ArrayMinimum(SA,FP,Shift)];

SM[Shift]=(2*(2+SMF)*SA[Shift]-(t+b))/2/(1+SMF); } return; }

//---------------------------------------------------------------------

void LZZCalc(int Pos) { 

int i,RBar,LBar,ZZ,NZZ,NZig,NZag; 

i=Pos-1; NZig=0; NZag=0;

while(i<MaxBar && ZZ==0) { i++; LZZ[i]=0; RBar=i-MainRZZ; 

if(RBar<Pos) RBar=Pos; LBar=i+MainRZZ;

if(i==ArrayMinimum(SM,LBar-RBar+1,RBar)) { ZZ=-1; NZig=i; }

if(i==ArrayMaximum(SM,LBar-RBar+1,RBar)) { ZZ=1;NZag=i; } }

if(ZZ==0) return; NZZ=0;

if(i>Pos) { if(SM[i]>SM[Pos]) { if(ZZ==1) {

if(i>=Pos+MainRZZ && NZZ<5) { NZZ++; LTF[NZZ]=i; } NZag=i; 

LZZ[i]=SM[i]; } }

else { if(ZZ==-1) { if(i>=Pos+MainRZZ && NZZ<5) { NZZ++; LTF[NZZ]=i; }

NZig=i; LZZ[i]=SM[i]; } } }

while(i<LBZZ || NZZ<5) {  LZZ[i]=0; RBar=i-MainRZZ; 

if(RBar<Pos) RBar=Pos; LBar=i+MainRZZ;

if(i==ArrayMinimum(SM,LBar-RBar+1,RBar)) {

if(ZZ==-1 && SM[i]<SM[NZig]) { 

if(i>=Pos+MainRZZ && NZZ<5) LTF[NZZ]=i; LZZ[NZig]=0; LZZ[i]=SM[i]; 

NZig=i; }

if(ZZ==1) { if(i>=Pos+MainRZZ && NZZ<5) { NZZ++; LTF[NZZ]=i; } 

LZZ[i]=SM[i]; ZZ=-1; NZig=i; } }

if(i==ArrayMaximum(SM,LBar-RBar+1,RBar)) {

if(ZZ==1 && SM[i]>SM[NZag]) { 

if(i>=Pos+MainRZZ && NZZ<5) LTF[NZZ]=i; LZZ[NZag]=0; LZZ[i]=SM[i]; 

NZag=i; }

if(ZZ==-1) { if(i>=Pos+MainRZZ && NZZ<5) { NZZ++; LTF[NZZ]=i; } 

LZZ[i]=SM[i]; ZZ=1; NZag=i; } } i++; if(i>MaxBar) return; } 

nLBZZ=Bars-LTF[5]; LZZ[Pos]=SM[Pos]; return; }

//----

void SZZCalc(int Pos) { 

int i,RBar,LBar,ZZ,NZZ,NZig,NZag; 

i=Pos-1; NZig=0; NZag=0;

while(i<=LBZZ && ZZ==0) { i++; pDn[i]=0; pUp[i]=0; Dn[i]=0; Up[i]=0; 

Lmt[i]=0; RBar=i-SRZZ; if(RBar<Pos) RBar=Pos; LBar=i+SRZZ;

if(i==ArrayMinimum(SM,LBar-RBar+1,RBar)) { ZZ=-1; NZig=i; }

if(i==ArrayMaximum(SM,LBar-RBar+1,RBar)) { ZZ=1; NZag=i; } }

if(ZZ==0) return; NZZ=0;

if(i>Pos) { if(SM[i]>SM[Pos]) { if(ZZ==1) {

if(i>=Pos+SRZZ && NZZ<4) { NZZ++; STF[NZZ]=i; } NZag=i; 

Dn[i-1]=Open[i-1]; } }

else { if(ZZ==-1) { if(i>=Pos+SRZZ && NZZ<4) { NZZ++; STF[NZZ]=i; }

NZig=i; Up[i-1]=Open[i-1]; } } }

while(i<=LBZZ || NZZ<4) { pDn[i]=0; pUp[i]=0; Dn[i]=0; Up[i]=0; 

Lmt[i]=0; RBar=i-SRZZ; if(RBar<Pos) RBar=Pos; LBar=i+SRZZ;

if(i==ArrayMinimum(SM,LBar-RBar+1,RBar)) {

if(ZZ==-1 && SM[i]<SM[NZig]) { 

if(i>=Pos+SRZZ && NZZ<4) STF[NZZ]=i; Up[NZig-1]=0; Up[i-1]=Open[i-1]; 

NZig=i; } if(ZZ==1) { if(i>=Pos+SRZZ && NZZ<4) { NZZ++; STF[NZZ]=i; } 

Up[i-1]=Open[i-1]; ZZ=-1; NZig=i;  } }

if(i==ArrayMaximum(SM,LBar-RBar+1,RBar)) {

if(ZZ==1 && SM[i]>SM[NZag]) { 

if(i>=Pos+SRZZ && NZZ<4) STF[NZZ]=i; Dn[NZag-1]=0; Dn[i-1]=Open[i-1]; 

NZag=i; } if(ZZ==-1) { if(i>=Pos+SRZZ && NZZ<4) { NZZ++; STF[NZZ]=i; } 

Dn[i-1]=Open[i-1]; ZZ=1; NZag=i; } } i++; if(i>LBZZ) return; } 

nSBZZ=Bars-STF[4]; return; }

//---------------------------------------------------------------------

void ArrCalc() { int i,j,k,n,z=0; double p, b;

i=LBZZ; while(LZZ[i]==0) i--; j=i; p=LZZ[i]; i--; while(LZZ[i]==0) i--; 

if(LZZ[i]>p) z=1; if(LZZ[i]>0 && LZZ[i]<p) z=-1; p=LZZ[j]; i=j-1;  

while(i>0) { if(LZZ[i]>p) { z=-1; p=LZZ[i]; }

if(LZZ[i]>0 && LZZ[i]<p) { z=1;  p=LZZ[i]; }

if(z>0 && Dn[i]>0) { Lmt[i]=Open[i]; Dn[i]=0; }

if(z<0 && Up[i]>0) { Lmt[i]=Open[i]; Up[i]=0; }

if(z>0 && Up[i]>0) { if(i>1) { j=i-1; k=j-SRZZ+1; if(k<0) k=0; 

n=j; while(n>=k && Dn[n]==0) { pUp[n]=Up[i]; pDn[n]=0; n--; } } 

if(i==1) pUp[0]=Up[i]; } 

if(z<0 && Dn[i]>0) { if(i>1) { j=i-1; k=j-SRZZ+1; if(k<0) k=0; 

n=j; while(n>=k && Up[n]==0) { pDn[n]=Dn[i]; pUp[n]=0; n--; } } 

if(i==1) pDn[0]=Dn[i]; } 

i--; } return; }

//---------------------------------------------------------------------

void deinit() { 

return; }

//---------------------------------------------------------------------

int init() { IndicatorBuffers(8);

SetIndexBuffer(0,Lmt);

SetIndexStyle(0,DRAW_ARROW,EMPTY,2); SetIndexArrow(0,251);

SetIndexEmptyValue(0,0.0);

SetIndexBuffer(1,LZZ);

if(DrawZZ) {

SetIndexStyle(1,DRAW_SECTION,EMPTY,2);

SetIndexEmptyValue(1,0.0); }

else SetIndexStyle(1,DRAW_NONE);

SetIndexBuffer(2,SA); SetIndexStyle(2,DRAW_NONE);

SetIndexBuffer(3,SM); SetIndexStyle(3,DRAW_NONE);

SetIndexBuffer(4,Up); SetIndexStyle(4,DRAW_ARROW,EMPTY,1);

SetIndexArrow(4,233); SetIndexEmptyValue(4,0.0);

SetIndexBuffer(5,Dn); SetIndexStyle(5,DRAW_ARROW,EMPTY,1);

SetIndexArrow(5,234); SetIndexEmptyValue(5,0.0);

SetIndexBuffer(6,pUp); SetIndexStyle(6,DRAW_ARROW);

SetIndexArrow(6,217); SetIndexEmptyValue(6,0.0);

SetIndexBuffer(7,pDn); SetIndexStyle(7,DRAW_ARROW);

SetIndexArrow(7,218); SetIndexEmptyValue(7,0.0); return(0); }

//---------------------------------------------------------------------

int start() { int counted_bars=IndicatorCounted(); int limit,i,j,n;

if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--;

if(First==true) { 

if(SR<2) SR=2; if(Bars<=2*(MainRZZ+FP+SR+2)) return(-1); 

if(SRZZ<=SR) SRZZ=SR+1; MaxBar=Bars-(MainRZZ+FP+SR+2);

LBZZ=MaxBar; SBZZ=LBZZ; prevBars=Bars; First=false; }

limit=Bars-counted_bars; for(i=limit;i>=0;i--) { MainCalculation(i); }

if(prevBars!=Bars) { SBZZ=Bars-nSBZZ; LBZZ=Bars-nLBZZ; prevBars=Bars; } 

SZZCalc(0); LZZCalc(0); ArrCalc(); return(0); }

//---------------------------------------------------------------------


Yanıtlandı

1
Geliştirici 1
Derecelendirme
(19)
Projeler
24
8%
Arabuluculuk
9
33% / 33%
Süresi dolmuş
1
4%
Yüklendi
2
Geliştirici 2
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
3
Geliştirici 3
Derecelendirme
(25)
Projeler
34
26%
Arabuluculuk
4
50% / 25%
Süresi dolmuş
4
12%
Serbest
4
Geliştirici 4
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
5
Geliştirici 5
Derecelendirme
Projeler
1
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
6
Geliştirici 6
Derecelendirme
(460)
Projeler
801
48%
Arabuluculuk
73
19% / 52%
Süresi dolmuş
140
17%
Çalışıyor
7
Geliştirici 7
Derecelendirme
(44)
Projeler
58
3%
Arabuluculuk
6
0% / 67%
Süresi dolmuş
5
9%
Çalışıyor
8
Geliştirici 8
Derecelendirme
(169)
Projeler
179
46%
Arabuluculuk
3
33% / 33%
Süresi dolmuş
1
1%
Çalışıyor
9
Geliştirici 9
Derecelendirme
(12)
Projeler
21
43%
Arabuluculuk
8
0% / 50%
Süresi dolmuş
3
14%
Serbest
10
Geliştirici 10
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
11
Geliştirici 11
Derecelendirme
(48)
Projeler
57
35%
Arabuluculuk
15
27% / 60%
Süresi dolmuş
1
2%
Çalışıyor
12
Geliştirici 12
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
13
Geliştirici 13
Derecelendirme
(384)
Projeler
495
23%
Arabuluculuk
59
56% / 25%
Süresi dolmuş
58
12%
Çalışıyor
14
Geliştirici 14
Derecelendirme
(2671)
Projeler
3404
68%
Arabuluculuk
77
48% / 14%
Süresi dolmuş
342
10%
Serbest
Yayınlandı: 1 kod
15
Geliştirici 15
Derecelendirme
(13)
Projeler
17
24%
Arabuluculuk
1
100% / 0%
Süresi dolmuş
4
24%
Çalışıyor
16
Geliştirici 16
Derecelendirme
(2)
Projeler
3
0%
Arabuluculuk
0
Süresi dolmuş
0
Çalışıyor
17
Geliştirici 17
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
18
Geliştirici 18
Derecelendirme
(1)
Projeler
1
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
19
Geliştirici 19
Derecelendirme
(268)
Projeler
602
34%
Arabuluculuk
64
20% / 58%
Süresi dolmuş
147
24%
Çalışıyor
Yayınlandı: 1 makale, 22 kod
20
Geliştirici 20
Derecelendirme
(50)
Projeler
64
20%
Arabuluculuk
11
27% / 55%
Süresi dolmuş
5
8%
Serbest
21
Geliştirici 21
Derecelendirme
(49)
Projeler
63
57%
Arabuluculuk
4
75% / 25%
Süresi dolmuş
1
2%
Serbest
22
Geliştirici 22
Derecelendirme
(19)
Projeler
27
11%
Arabuluculuk
11
9% / 55%
Süresi dolmuş
12
44%
Serbest
23
Geliştirici 23
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
24
Geliştirici 24
Derecelendirme
(642)
Projeler
869
48%
Arabuluculuk
29
38% / 17%
Süresi dolmuş
63
7%
Serbest
25
Geliştirici 25
Derecelendirme
(8)
Projeler
9
56%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
26
Geliştirici 26
Derecelendirme
(79)
Projeler
89
31%
Arabuluculuk
9
11% / 56%
Süresi dolmuş
4
4%
Yüklendi
27
Geliştirici 27
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
28
Geliştirici 28
Derecelendirme
(12)
Projeler
25
4%
Arabuluculuk
1
0% / 0%
Süresi dolmuş
7
28%
Serbest
29
Geliştirici 29
Derecelendirme
Projeler
1
0%
Arabuluculuk
1
100% / 0%
Süresi dolmuş
0
Serbest
30
Geliştirici 30
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
31
Geliştirici 31
Derecelendirme
(27)
Projeler
33
36%
Arabuluculuk
0
Süresi dolmuş
2
6%
Serbest
32
Geliştirici 32
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
33
Geliştirici 33
Derecelendirme
(3)
Projeler
7
29%
Arabuluculuk
0
Süresi dolmuş
4
57%
Serbest
34
Geliştirici 34
Derecelendirme
(316)
Projeler
321
70%
Arabuluculuk
2
100% / 0%
Süresi dolmuş
0
Serbest
Yayınlandı: 1 kod
35
Geliştirici 35
Derecelendirme
(613)
Projeler
690
42%
Arabuluculuk
2
100% / 0%
Süresi dolmuş
1
0%
Çalışıyor
Yayınlandı: 9 kod
36
Geliştirici 36
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
37
Geliştirici 37
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
38
Geliştirici 38
Derecelendirme
(251)
Projeler
295
76%
Arabuluculuk
13
77% / 0%
Süresi dolmuş
4
1%
Serbest
39
Geliştirici 39
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
40
Geliştirici 40
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
Benzer siparişler
We are seeking talented Graphic Designers capable of transforming concepts into visually striking representations. Whether your expertise lies in branding, marketing materials, or digital graphics, we welcome your application. Our criteria include: - Creativity and originality - Effective communication skills - Prompt delivery of work - A comprehensive and professional portfolio We invite you to submit your portfolio
I already have the source code of an MT5 Expert Advisor. The EA is about 70% complete. I need someone to modify and complete it. Requirements: • Manage EURUSD only. • Manage manual trades only (Magic Number = 0). • Support unlimited manual positions simultaneously. • Automatically add a 10-pip Stop Loss if a position has no Stop Loss. • Automatically add a 10-pip Take Profit if a position has no Take Profit. • Do not
I am looking for an expert MQL5 developer to build a robust, professional Expert Advisor for Gold (XAUUSD). The EA must be Event-Driven (OnTick) with no 'Sleep' functions, ensuring instant execution. ​ Core Logic: ​ Grid Strategy: Start with 0.02 Buy/Sell. Lot size sequence: 0.02, 0.03, 0.05, 0.09, 0.14, 0.26, 0.44, 0.75, 1.28, 2.18 (Max 10 steps). ​ Dynamic TP: Total basket TP must update instantly upon new order
SETJEO'S GOLD EA 30 - 200 USD
double GetTodayProfit() { double profit = 0; datetime today = StringToTime(TimeToString(TimeCurrent(), TIME_DATE)); HistorySelect(today, TimeCurrent()); for(int i = HistoryDealsTotal() - 1; i >= 0; i--) { ulong ticket = HistoryDealGetTicket(i); if(HistoryDealGetString(ticket, DEAL_SYMBOL) == _Symbol) { profit += HistoryDealGetDouble(ticket, DEAL_PROFIT); } } return profit; }
مطلوب موشر مع ربطه علي بوت تداول قوي جدا مختبر ومجرب مع التاكيد علي نسبه النجاح يتم انشاءه علي جميع الموشرات في الفوركس الذهب والبتكوين والus100 مع شرح للستراتيجية ونتايج اختيار اذا كان مجرب
I have an expert advisor's investor login. I want you to study it and make me the exact same EA. There should be absolutely no differences or mistakes. You should have great observation skills for this aswell
I am looking for an experienced MQL5 developer to code a simple grid trading strategy into an Expert Advisor. The strategy logic is already defined, and I am looking for someone with strong MQL5 development experience to implement it accurately and efficiently. If you are interested and have relevant experience, please get in touch so we can discuss the project details
I am looking for an experienced MQL5 or MQL4 developer with a strong background in low-latency algorithmic trading, market data integration, arbitrage and execution optimization. The project involves developing a high-performance HFT Expert Advisor (EA) for XAUUSD or US30 on IC Markets that is designed for robust execution in both demo and live environments. The EA may use market data feeds (such as lmax,one zero or
I am looking for an experienced MQL5 or MQL4 developer with a strong understanding of high-frequency trading (HFT) concepts who can explain how certain HFT-style strategies have historically been able to pass proprietary firm evaluations while also being profitable on demo accounts and capable of transitioning successfully to live trading. I am interested in understanding the legitimate trading logic, execution
Looking for a Prop Firm Trading Bot (Gold/XAUUSD Preferred) I am looking for an experienced developer who can either: Create a custom prop firm trading bot, or Provide an existing, proven prop firm trading bot. Requirements: Preferably trades Gold (XAUUSD) . Designed to pass prop firm evaluation challenges. Must respect the following risk parameters: Daily Drawdown: Maximum 5% Overall Maximum Drawdown: 10% Strong

Proje bilgisi

Bütçe
45+ USD

Müşteri

(6)
Verilmiş siparişler7
Arabuluculuk sayısı0