← К каталогу
Исходный код · ID 2922

Genesis Matrix 2.21_1

genesismatrix 2.21_1.mq5
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Genesis Matrix 2.21_1 — это пользовательский индикатор для MetaTrader 5, объединяющий четыре аналитических подсистемы (TVI, CCI, T3_8 и GannHiLo) в единую матричную визуализацию. Индикатор отображает сигналы каждой подсистемы в виде стрелок на отдельном окне, используя восемь буферов данных.

Индикатор поддерживает анализ на более высоких таймфреймах, чем текущий график. Каждая подсистема может быть настроена независимо через отдельные параметры периода и порога. Внутренние вычисления используют данные как текущего, так и выбранного старшего таймфрейма.

Функциональность уведомлений позволяет получать popup-оповещения и email-сообщения при совпадении сигналов всех четырёх подсистем в одном направлении. При инициализации индикатор проверяет наличие трёх внешних .ex4-файлов подсистем и предупреждает об их отсутствии.

Получить полный код

Поиск по коду файла

/*------------------------------------------------------------------------------------
   Name: Genesis Matrix 2.21_1
   Derived from: Genesis Matrix 2.20_1

   Change log: 
   2.21_1 2012 07 16 Added T3_8.BarCount extern 
                     Changed ProcessT3 to send the BarCount parameter
   2.20_1 2012 07 09 Reverted to original ProcessT3 parameters without the iCustom call with price and bars; wrong answers returned.
   2.20   2012 07 09 Swapped the Fisher M11 for the Gann HiLo
                     Corrected the T3 period from 10 to 8
   2.12_1 2012 07 06 Name change for consistency with the secondary matrix. No code changes.
   2.10   2012 06 30 Changed the CCI to use a threshold value to determine red/blue (but then turned it off)
                     Set MaxBars = 500 as extern to replace use of Bars (but then turned it off)
          2012 06 26 Cody Changed Gann to T3_8
                          Changed Fisher Yurik to Fisher M11
                          Name change to Genesis 2.00
        2012-04-25. Xaphod, v1.02
           - Force repaint of all bars if newbars>3 on set TF
        2012-04-23. Xaphod, v1.01
           - Fixed Alerts
        2012-04-20. Xaphod, v1.00
           - First Release 
-------------------------------------------------------------------------------------*/

#property indicator_separate_window
#property indicator_buffers 8
#property indicator_color1 C'0,90,255'
#property indicator_color2 Red
#property indicator_color3 C'0,90,255'
#property indicator_color4 Red
#property indicator_color5 C'0,90,255'
#property indicator_color6 Red
#property indicator_color7 C'0,90,255'
#property indicator_color8 Red
#property indicator_minimum 0
#property indicator_maximum 2.3

#import "user32.dll"
   bool     GetWindowRect(int hWnd, int& lpRect[]);
#import
#import "Kernel32.dll"
  int CreateFileA(string lpFileName,int dwDesiredAccess, int dwShareMode, int lpSecurityAttributes, int dwCreationDisposition,int dwFlagsAndAttributes, int hTemplateFile);
  int CloseHandle(int hObject);
#import

#define OPEN_EXISTING 3
#define FILE_SHARE_READ 1
#define GENERIC_READ 0x80000000
#define FILE_ATTRIBUTE_NORMAL 128
#define INVALID_HANDLE_VALUE 0xFFFFFFFF

#define INDICATOR_NAME "Genesis"
#define INDICATOR_VERSION "2.21_1"
#define BAR_CHAR 110

#define IND_TVI        "TVI"
#define IND_GANNHILO   "GannHiLo-Histo"
#define IND_T3_8       "T3_2ColorHisto"

#define IDX_TVI       0
#define IDX_CCI       1
#define IDX_T3_8      2
#define IDX_GHL       3

extern string    Indi.Version=INDICATOR_VERSION;

extern string    TimeFrame.Settings="??????????????????????????????";
extern int       TimeFrame.Period=0;        // Timeframe: 0,1,5,15,30,60,240,1440 etc. Current Timeframe=0. 
extern int       TimeFrame.Auto=0;          // Automatically select higher TF. M15 and M30 -> H1. Off=0, 1st HTF=1, 2nd HTF=2
extern string    TVI.Settings="??????????????????????????????";
extern int       TVI.r=12;
extern int       TVI.s=12;
extern int       TVI.u=5;
extern string    TVI.Label="TVI";
extern string    CCI.Settings="??????????????????????????????";
extern int       CCI.Period=20;
extern double    CCI.Threshold=60;
extern string    CCI.Label="CCI";
extern string    T3_8.Settings="??????????????????????????????";
extern int       T3_8.Period=8;
extern int       T3_8.BarCount=1500;
extern string    T3_8.Label="T3..";
extern string    GannHiLo.Settings="??????????????????????????????";
extern int       GannHiLo.Period=10;
extern string    GannHiLo.Label="GHL";
extern string    Alert.Settings="??????????????????????????????";
extern bool      Alert.OnBarClose=True;     // Alert only when an open bar closes
extern bool      Alert.Popup=False;         // Enable popup window & sound on alert
extern bool      Alert.Email=False;         // Enable send email on alert
extern string    Alert.Subject="";          // Email Subject. Null string ("") will result in a preconfigured subject.
extern string    Display.Settings="??????????????????????????????";
extern color     Display.LabelColor=White;  // Color of Histogram Id labels

double gadTVIUp[];
double gadTVIDn[];
double gadCCIUp[];
double gadCCIDn[];
double gadT3Up[];
double gadT3Dn[];
double gadGHLUp[];
double gadGHLDn[];

double gadGap[4];

int giRepaintBars;
string gsIndicatorName;
bool gbInit;

int init() {
      // код доступен только после оплаты
   }

int deinit() {

  for(int i=ObjectsTotal()-1; i>-1; i--)
    if (StringFind(ObjectName(i),gsIndicatorName)>=0)  ObjectDelete(ObjectName(i));
  return (0);
}

int start() {
      // код доступен только после оплаты
   }
  int iNewBars;
  int iCountedBars; 
  static datetime tCurBar;

  iCountedBars=IndicatorCounted();
  if(iCountedBars < 0) return (-1); 
  if(iCountedBars>0) iCountedBars--;

  if (NewBars(TimeFrame.Period)>3)
    iNewBars=Bars-1;

  else
    iNewBars=Bars-iCountedBars;

  if (iNewBars<giRepaintBars)
    iNewBars=giRepaintBars;

  ProcessTVI(iNewBars, TVI.r, TVI.s, TVI.u, gadTVIUp, gadTVIDn);
  ProcessCCI(iNewBars,CCI.Period, CCI.Threshold, gadCCIUp, gadCCIDn);
  ProcessT3_8(iNewBars,T3_8.Period, gadT3Up, gadT3Dn);
  ProcessGannHiLo(iNewBars,GannHiLo.Period, gadGHLUp, gadGHLDn);

Показано первые 50% кода (символов: 11300)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
1 130₽ ≈ $13.81