Indicators Used
0
Views
0
Downloads
0
Favorites
profitunity_signals
//+------------------------------------------------------------------+
//| profitunity_signals.mq4 |
//| Necron,2010 |
//+------------------------------------------------------------------+
//Ïðè íàïèñàíèè áèáëèîòåêè áûë èñïîëüçîâàí êîä Oasis`a è ôóíêöèÿ KimIV
//FindNearFractal();
//Áèáëèîòåêà ñîäåðæèò ñèãíàëû ïî ñèñòåìå Profitunity è âîçâðàùàåò ïðè îáðàùåíèè
//çíà÷åíèå true/false;
/*
#import "profitunity_signals.ex4"
double AO(int Shift);//ôóíêöèÿ âîçâðàùàåò çíà÷åíèå èíäèêàòîðà AO íà áàðå shift
bool bull_dish();//Áû÷üå áëþäöå
bool bear_dish();//Ìåäâåæüå áëþäöå
bool bull_cross();//áû÷üå ïåðåñå÷åíèå íóëåâîé ëèíèè
bool bear_cross();//ìåäâåæüå ïåðåñå÷åíèå íóëåâîé ëèíèè
// bool two_high_peaks();//äâà ïèêà âûøå íóëåâîé ëèíèè
// bool two_low_peaks();//äâà ïèêà íèæå íóëåâîé ëèíèè
double AC(int Shift);//ôóíêöèÿ âîçâðàùàåò çíà÷åíèå èíäèêàòîðà AC íà áàðå shift
bool bull_double_bar_above();//2 áàðà âûøå íóëåâîé ëèíèè
bool bull_triple_bar_below();//òðè áàðà íèæå íóëåâîé ëèíèè
bool bull_cross_and_double_bar();//îäèí áàð íèæå íóëåâîé ëèíèè è ïåðåñå÷åíèå
bool bear_double_bar_below();//äâà áàðà íèæå íóëåâîé ëèíèè
bool bear_triple_bar_above();//òðè áàðà âûøå íóëåâîé ëèíèè
bool bear_cross_and_double_bar();//îäèí áàð âûøå íóëåâîé ëèíèè è ïåðåñå÷åíèå
bool green_zone();//çåëåíàÿ çîíà
bool red_zone();//êðàñíàÿ çîíà
double FindNearFractal(string sy="0", int tf=0, int mode=MODE_LOWER);
double teeth(int shift);
#import
//Ïðèìåð èñïîëüçîâàíèÿ:
if(bull_dish()) {}
*/
#property library
//+------------------------------------------------------------------+
//|Ñèãíàëû èíäèêàòîðà AO |
//+------------------------------------------------------------------+
double AO(int Shift)//ôóíêöèÿ âîçâðàùàåò çíà÷åíèå èíäèêàòîðà AO íà áàðå shift
{
return(NormalizeDouble(iAO(NULL, 0, Shift), Digits + 2));
}
bool bull_dish()//Áû÷üå áëþäöå
{
if(AO(1)>AO(2) && AO(3)>AO(2) && AO(1)>0 && AO(2)>0 && AO(3)>0)
return(true);else return(false);
}
bool bear_dish()//Ìåäâåæüå áëþäöå
{
if(AO(1)<AO(2) && AO(3)<AO(2) && AO(1)<0 && AO(2)<0 && AO(3)<0)
return(true);else return (false);
}
bool bull_cross()//áû÷üå ïåðåñå÷åíèå íóëåâîé ëèíèè
{
if(AO(2)<0 && AO(1)>0)
return(true);else return(false);
}
bool bear_cross()//ìåäâåæüå ïåðåñå÷åíèå íóëåâîé ëèíèè
{
if(AO(2)>0 && AO(1)<0)
return(true);else return(false);
}
/* Ðàáîòîñïîñîáíîñòü ôóíêöèè íå ïðîâåðÿëàñü
int get_high_peak(int start)//ôóíêöèÿ Luptator`a - âîçâðàùàåò ñìåùåíèå áàðà íà êîòîðîì îáðàçîâàëñÿ ïèê
{
double ao0=0,ao1=0,ao2=0;
int retn_shift=0;
for(int i=start;i<Bars;i++)
{
ao0=iAO(NULL,0,i);
ao1=iAO(NULL,0,i+1);
ao2=iAO(NULL,0,i+2);
if(ao0>0 && ao2>0 && ao0<ao1 && ao1>ao2)
{
retn_shift=0;
break;
}
}
return(retn_shift);
}
bool two_high_peaks()//äâà ïèêà âûøå íóëåâîé ëèíèè
{
int high_peak1=get_high_peak(1);
int high_peak2=get_high_peak(high_peak1);
if(iAO(NULL,0,high_peak1)<iAO(NULL,0,high_peak2))
return(true);else return(false);
}
int get_low_peak(int start)//ôóíêöèÿ Luptator`a - âîçâðàùàåò ñìåùåíèå áàðà íà êîòîðîì îáðàçîâàëñÿ íèæíèé ïèê
{
double ao0=0,ao1=0,ao2=0;
int retn_shift=0;
for(int i=start;i<Bars;i++)
{
ao0=iAO(NULL,0,i);
ao1=iAO(NULL,0,i+1);
ao2=iAO(NULL,0,i+2);
if(ao0<0 && ao2<0 && ao0>ao1 && ao1<ao2)
{
retn_shift=0;
break;
}
}
return(retn_shift);
}
bool two_low_peaks()//äâà ïèêà íèæå íóëåâîé ëèíèè
{
int high_peak1=get_high_peak(0);
int high_peak2=get_high_peak(high_peak1);
if(iAO(NULL,0,high_peak1)>iAO(NULL,0,high_peak2))
return(true);else return(false);
}
*/
//+------------------------------------------------------------------+
//|Ñèãíàëû èíäèêàòîðà AC |
//+------------------------------------------------------------------+
double AC(int Shift)//ôóíêöèÿ âîçâðàùàåò çíà÷åíèå èíäèêàòîðà AC íà áàðå shift
{
return(NormalizeDouble(iAO(NULL, 0, Shift), Digits + 2));
}
bool bull_double_bar_above()//2 áàðà âûøå íóëåâîé ëèíèè
{
if(AC(1)>AC(2) && AC(2)>AC(3) && AC(3) < AC(4) && AC(3) > 0)
return(true);else return(false);
}
bool bull_triple_bar_below()//òðè áàðà íèæå íóëåâîé ëèíèè
{
if(AC(1) > AC(2) && AC(2)>AC(3) && AC(3)>AC(4) && AC(4)<AC(5) && ((AC(1) < 0) ||(AC(1) > 0 && AC(2) < 0)))
return(true); else return(false);
}
bool bull_cross_and_double_bar()//äâà áàðà íèæå íóëåâîé ëèíèè è ïåðåñå÷åíèå
{
if(AC(1)>AC(2) && AC(2)>AC(3) && AC(3)<AC(4) && AC(1)>0 && AC(2)<0)
return(true); else return(false);
}
bool bear_double_bar_below()//äâà áàðà íèæå íóëåâîé ëèíèè
{
if(AC(1)<AC(2) && AC(2)<AC(3) && AC(3)>AC(4) && AC(3)<0)
return(true); else return(false);
}
bool bear_triple_bar_above()//òðè áàðà âûøå íóëåâîé ëèíèè
{
if(AC(1)<AC(2) && AC(2)<AC(3) && AC(3)<AC(4)&& AC(4)>AC(5) && ((AC(1)>0) || (AC(1)<0 && AC(2)>0)))
return(true); else return(false);
}
bool bear_cross_and_double_bar()//äâà áàðà âûøå íóëåâîé ëèíèè è ïåðåñå÷åíèå
{
if(AC(1)<AC(2) && AC(2)<AC(3) && AC(3)>AC(4) && AC(1)<0 && AC(2)>0)
return(true); else return(false);
}
//+------------------------------------------------------------------+
//|Ñèãíàëû òîðãîâîé çîíû |
//+------------------------------------------------------------------+
bool green_zone()//çåëåíàÿ çîíà
{
if(AO(1)>AO(2) && AC(1)>AC(2))
return(true);else return(false);
}
bool red_zone()//êðàñíàÿ çîíà
{
if(AO(1)<AO(2) && AC(1)<AC(2))
return(true);else return(false);
}
//+------------------------------------------------------------------+
//|Ñèãíàëû ôðàêòàëîâ |
//+------------------------------------------------------------------+
// fr_up=(FindNearFractal(NULL,0,MODE_UPPER));
// fr_dn=(FindNearFractal(NULL,0,MODE_LOWER));
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+
//Íàéäåì ïîñëåäíèé ôðàêòàë, èñïîëüçóÿ ôóíêöèþ KimIV |
//+----------------------------------------------------------------------------+
//| Àâòîð : Êèì Èãîðü Â. aka KimIV, http://www.kimiv.ru |
//+----------------------------------------------------------------------------+
//| Âåðñèÿ : 07.10.2006 |
//| Îïèñàíèå : Ïîèñê áëèæàéøåãî ôðàêòàëà. |
//+----------------------------------------------------------------------------+
//| Ïàðàìåòðû: |
//| sy - íàèìåíîâàíèå èíñòðóìåíòà (NULL - òåêóùèé ñèìâîë) |
//| tf - òàéìôðåéì ( 0 - òåêóùèé ÒÔ) |
//| mode - òèï ôðàêòàëà (MODE_LOWER|MODE_UPPER) |
//+----------------------------------------------------------------------------+
double FindNearFractal(string sy="0", int tf=0, int mode=MODE_LOWER) {
if (sy=="" || sy=="0") sy=Symbol();
double f=0;
int d=MarketInfo(sy, MODE_DIGITS), s;
if (d==0) if (StringFind(sy, "JPY")<0) d=4; else d=2;
for (s=3; s<100; s++) {
f=iFractals(sy, tf, mode, s);
if (f!=0) return(NormalizeDouble(f, d));
}
Print("FindNearFractal(): Ôðàêòàë íå íàéäåí");
return(0);
}
//+------------------------------------------------------------------+
//| Ôóíêöèÿ âîçâðàùàåò çíà÷åíèå ëèíèè çóáîâ àëëèãàòîðà |
//+------------------------------------------------------------------+
double teeth(int shift)
{
double teeth;
teeth=iAlligator(NULL, 0, 13, 8, 8, 5, 5, 3, MODE_SMMA, PRICE_MEDIAN, MODE_GATORTEETH,shift);
return(NormalizeDouble(teeth,Digits));
}
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
---