Indicators Used
0
Views
0
Downloads
0
Favorites
iMA.Gap
/*
âûçîâ èç êîäîâ - ñòàíäàðòíûå ïîëÿ + ïîëå GapPoints
double iCustom(
string symbol, // ñèìâîëüíîå èìÿ èíñòðóìåíòà (NULL- òåêóùèé)
int timeframe, // òàéì-ôðåéì (0- òåêóùèé)
"iMA.Gap", // èìÿ ýòîãî èíäèêàòîðà
//
int period, // ïåðèîä MA
double ma_shift, // ñäâèã MA
int ma_method, // ìåòîä óñðåäíåíèÿ:
// 0 - MODE_SMA - ïðîñòàÿ
// 1 - MODE_EMA - ýêñïîíåíöèàëüíàÿ
// 2 - MODE_SMMA - ñãëàæåííàÿ
// 3 - MODE_LWMA - ëèíåéíî-âçâåøåííàÿ
int applied_price, // òèï öåíû:
// 0 - PRICE_CLOSE - öåíà çàêðûòèÿ
// 1 - PRICE_OPEN - öåíà îòêðûòèÿ
// 2 - PRICE_HIGH - ìàêñ.öåíà
// 3 - PRICE_LOW - ìèí.öåíà
// 4 - PRICE_MEDIAN - ñðåäíÿÿ öåíà,(high+low)/2
// 5 - PRICE_TYPICAL - òèïè÷íàÿ öåíà,(high+low+close)/3
// 6 - PRICE_WEIGHTED - âçâåøåííàÿ öåíà çàêðûòèÿ,(high+low+close+close)/4
// 7 - îáúåì
int GapPoints, // ïîðîã äëÿ èäåíòèôèêàöèè ãýïà â ïï;
// =0- ñòàíäàðíûé ðåæèì
// <0- âûâîä áåç ñìåùåíèÿ
//
mode, // mode - íîìåð áóôåðà èíäèêàòîðà (0)
int shift // ñäâèã
)
==============
iCustom(NULL,0,"iMA.Gap",MAperiod,Shift,Method,Price,GapPoints, 0,i);
*/
#property indicator_chart_window // â îêíå èíñòðóìåíòà
#property indicator_buffers 1
#property indicator_color1 Red
// âõîäíûå ïàðàìåòðû
extern int MAperiod=3;
extern int Shift=0;
extern int Method=0;
extern int Price=0;
extern int GapPoints=0; // ïîðîã èäåíòèôèêàöèè ãýïà â ïï.
int GapHours=8; // ïîðîã ïî âðåìåíè â ÷àñàõ (>0) èëè â ìèíóòàõ (<0)
// ìàññèâû áóôåðîâ
double Ind[]; // áóôåð èíäèêàòîðà
double price[]; // áóôåð áåçãýïîâûõ êîòèðîâîê
double base[]; // áóôåð ñìåùåíèÿ
void init() {
// êîðîòêîå èìÿ
string short_name="MA("+MAperiod+")";
// áóôåðû
IndicatorBuffers(3);
SetIndexBuffer(0,Ind);
IndicatorShortName(short_name); // áóôåð èíäèêàòîðà
SetIndexLabel(0,short_name);
SetIndexBuffer(1,price); // áóôåð áåçãýïîâûõ êîòèðîâîê
SetIndexBuffer(2,base); // áóôåð ñìåùåíèÿ
}
void start() {
// ãðàíèöà ïåðåñ÷åòà
int limit=Bars-IndicatorCounted()-1;
if(limit>1) limit=Bars-1;
// çàïîëíåíèå áóôåðîâ áåçãýïîâûìè êîòèðîâêàìè è ñìåùåíèåì
for(int i=limit; i>=0; i--) {
price[i]=iCustom(NULL,0,"KillGap",GapPoints,GapHours,Price, 0,i); // êîòèðîâêè
base[i] =iCustom(NULL,0,"KillGap",GapPoints,GapHours,Price, 1,i); // ñìåùåíèå
}
// ðàñ÷åò èíäèêàòîðà ïî ìàññèâó price[]
for(i=limit; i>=0; i--) Ind[i]=iMAOnArray(price,Bars,MAperiod,Shift,Method,i)-base[i];
}
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
---