SSA Advanced TT
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «ssa of price advanced mtf tt(1).mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный продукт представляет собой пользовательский индикатор для платформы MetaTrader 4, написанный на языке MQL4. Он выполняет расчёт аналитического показателя методом сингулярного спектра (SSA) с использованием внешней DLL-библиотеки libSSA.dll и отображает результаты на графике цены.
Индикатор поддерживает многотаймфреймный режим, позволяя проводить анализ на таймфрейме, отличном от текущего графика. Доступны режимы интерполяции (линейная и квадратичная) для более гладкого представления рассчитанных данных между барами.
Встроена система обнаружения тренда с возможностью многокрасочного отображения линий индикатора. Также реализован механизм уведомлений, поддерживающий отправку сообщений, звуковых сигналов, e-mail и push-уведомлений при смене направления тренда.
Настройки программы
| Настройка | Описание |
|---|---|
| History | History — Задаёт количество исторических баров, используемых для расчёта индикатора. |
| TimeFrame | TimeFrame — Выбирает таймфрейм, на котором выполняется расчёт индикатора. |
| true; (Interpolate) | Interpolate — Определяет тип интерполяции между барами: без интерполяции, линейная или квадратичная. |
| Lag | Lag — Устанавливает параметр лага (задержки) для расчёта SSA. |
| NumberOfComps | NumberOfComps — Задаёт количество вычислительных итераций для уточнения результата SSA. |
| Price | Price — Определяет тип цены, используемой для расчёта (например, закрытие, открытие и т.д.). |
| MultiColor | MultiColor — Включает или отключает многокрасочное отображение линий индикатора в зависимости от направления тренда. |
| SIGNALBAR | SIGNALBAR — Задаёт номер бара, на котором проверяется условие для генерации сигнала. |
| "expert.wav"; //"stops.wav" //"alert2.wav" //"news.wav" (SoundFile) | SoundFile — Указывает путь к звуковому файлу, воспроизводимому при срабатывании уведомления. |
Поиск по коду файла
#import "libSSA.dll"
void fastSingular(double& sourceArray[],int arraySize, int lag, int numberOfComputationLoops, double& destinationArray[]);
#import
#property indicator_chart_window
#property indicator_buffers 3
#property indicator_color1 clrDeepSkyBlue //clrLimeGreen //
#property indicator_color2 clrOrangeRed //PaleVioletRed
#property indicator_color3 clrOrangeRed //PaleVioletRed
#property indicator_width1 2
#property indicator_width2 2
#property indicator_width3 2
enum Iterpolation { intNO, /*No interpolation*/ intLinear, /*Linear Interpolation*/ intQuad /*Quadratic Interpolation*/ };
extern int History = 1888;
extern ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT;
extern Iterpolation Interpolate = intQuad; //true;
extern int Lag = 25;
extern int NumberOfComps = 2;
extern int Price = PRICE_CLOSE;
extern bool MultiColor = true;
extern int SIGNALBAR = 0;
extern bool AlertsMessage = true, //false,
AlertsSound = true, //false,
AlertsEmail = false,
AlertsMobile = false;
extern string SoundFile = "alert2.wav"; //"expert.wav"; //"stops.wav" //"alert2.wav" //"news.wav"
#define CallMTF(BUFF,idx) iCustom(NULL,TimeFrame,IndikName,History,PERIOD_CURRENT,Interpolate, Lag,NumberOfComps,Price, MultiColor,SIGNALBAR,AlertsMessage,AlertsSound,AlertsEmail,AlertsMobile,SoundFile, BUFF, idx)
double SSA[], SSADa[], SSADb[]; string IndikName;
double trend[], Source[], Value[];
static datetime TimeBar=0; string messageUP, messageDN;
int init()
{
// код доступен только после оплаты
}
int deinit() { return(0); }
int start()
{
// код доступен только после оплаты
}
int n = History;
if (n > Bars) {
n = Bars;
if (ArraySize(Source)!= n) { ArrayResize(Source,n); ArrayResize(Value,n); } }
static datetime barTime;
int i, limit, CountedBars=IndicatorCounted();
if (CountedBars<0) return(-1);
if (CountedBars>0) CountedBars--;
limit = MathMin(MathMax(Bars-CountedBars,Lag),n-1);
SetIndexDrawBegin(0,Bars-n);
if (barTime!=Time[0]) {
barTime=Time[0];
limit=n-1; }
if (TimeFrame!=_Period)
{
limit = (int)fmax(limit,fmin(Bars-2,CallMTF(4,0)*TimeFrame/_Period));
if (MultiColor && trend[limit]==-1) CleanPoint(limit,SSADa,SSADb);
for (i=limit+Lag*3; i>=0; i--)
{
int y = iBarShift(NULL,TimeFrame,Time[i],false);
SSA[i] = CallMTF(0,y);
trend[i] = CallMTF(3,y);
if (Interpolate==0 || (i>0 && y==iBarShift(NULL,TimeFrame,Time[i-1]))) continue;
interpolate(SSA,TimeFrame,Interpolate,i);
} //*конец цикла* for (i=limit+MAX*3; i>=0; i--)
for (i=limit+Lag; i>=0; i--) { if (MultiColor && trend[i]==-1) PlotPoint(i,SSADa,SSADb,SSA); }
return(0);
} //*конец* if (TimeFrame!=_Period).....
for(i=limit; i>=0; i--) Source[i]=iMA(NULL,0,1,0,MODE_SMA,Price,i);
fastSingular(Source,n,Lag,NumberOfComps,Value); ArrayCopy(SSA,Value);
if (MultiColor && trend[limit]==-1) CleanPoint(limit,SSADa,SSADПоказано первые 50% кода (символов: 5831)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.