Create an EA that will open 4 empty subwindows with its appropriate height

Trabalho concluído

Tempo de execução 1 dia
Comentário do desenvolvedor
I'm glad I met the client. It was difficult, but everything worked out. Thanks for your patience!
Comentário do cliente
good programmer.... finished the job in 1 day when i gave 3 days

Termos de Referência

repair these mt5 files so it will open 4 panes using hash tables to manage the subwindow handles
each pane row heights are defined in externvariables

#define SUBWINDOW1 "Technical Window 1"     // Shortname
#define SUBWINDOW2 "Technical Window 2"
#define SUBWINDOW3 "Technical Window 3"

#define SUBWINDOW4 "Trade Window"

use SubwindowTemplate to open the 4 windows above, height = 60 pixel/pane, show subwindow shortname on the top left corner of the subwindows

Obtain the full height without subwindow of the Main Chart in pixels.  80% of total Chart height dedicated to 4 panes.  each pane will have 20% max chart pixel and divide that by 12 maximum rows and 30 maximum column
save these pixel heights in int    m_YDistance[Y_DISTANCE_BUFFER];

example, total height of chart = 1000 pixels.  800 pixel dedicated to the subwindows.  each subwindows have a maximum of 12 rows. so 800 pixels/4 panes = 200 pixel/12 rows = ......

instead of using iCustoms to open the subwindows use hash to open the windows instead

like the following:-
CGraphics::Graphics()
[
     m_WindowsHash=new Hash(); // create new hash to manage the window handlers
}

CGraphics::InitTechnicalAnalysisWindow0(string WindowName)

{

if(!InitSubwindow(WindowName))

    {

      printf("Fail to Init Sub-Window Name = "+WindowName);

      return false;

    }

    int windowID = ChartWindowFind(m_WindowID[1], WindowName);   

   if(windowID<0)

      return false;

ResizeSubWindow(WindowName,m_ChartHeightPixel[1]);

}

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

//|                                                                  |

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

bool Graphics::StartCustomIndicator(int hWnd,string ChartName,bool AutomaticallyAcceptDefaults=false)

  {

   ResetLastError();

   

   printf("Start Custom Indicator");


   uchar charArrayIndicatorName[];

   StringToCharArray(ChartName,charArrayIndicatorName,0);


   // printf("charArrayIndicatorName = "+charArrayIndicatorName);


   int MessageNumber=RegisterWindowMessageW("MetaTrader4_Internal_Message");

   int res=SendMessageW(hWnd,MessageNumber,15,charArrayIndicatorName);

   if(res)

     {

      LogError(__FUNCTION__,"Failed to post a msg winAPI",GetLastError());

      return false;

     }


   return true;

  }

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

//|                                                                  |

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

bool Graphics::InitSubwindow(string ChartName)

  {

   ResetLastError();

   

   if(WindowFind(ChartName)>0)

     {

      if(m_WindowsHash.hGetInt(ChartName) < 0)

         m_WindowsHash.hPutInt(ChartName,WindowFind(ChartName));


      return true;

     }


   int hWnd=WindowHandle(Symbol(),0);

   if(!hWnd)

     {

      LogError(__FUNCTION__,"Window not found",GetLastError());

      return false;

     }

   bool res=StartCustomIndicator(hWnd,ChartName);

   if(WindowFind(ChartName)<0)

     {

      MessageBox(ChartName+" Indicator window not found.","ERROR",MB_ICONERROR);

      LogError(__FUNCTION__,ChartName+" Indicator window not found",GetLastError());

      return false;

     }


   if(res)

      m_WindowsHash.hPutInt(ChartName,WindowFind(ChartName));


   return res;

  }


Arquivos anexados:

MQ5
Guan_DNA.mq5
3.2 Kb
MQH
Enums.mqh
1.1 Kb
MQH
Graphics.mqh
10.3 Kb
MQH
Hash.mqh
20.7 Kb

Respondido

1
Desenvolvedor 1
Classificação
(2)
Projetos
2
0%
Arbitragem
1
0% / 0%
Expirado
0
Livre
Pedidos semelhantes
Title: MT4 One Click Trader EA (Custom Development) I am looking for an experienced MQL4 developer to build a custom One Click Trader Expert Advisor for MetaTrader 4. The objective is a fast, reliable, execution-focused trading panel with minimal visual clutter and robust operation on both standard and offline charts. Requirements Trade Panel The EA must provide a simple trading panel containing: Buy button Sell
Hello, I'm looking for an expert who can help me acquire a secure, easy-to-use bot with Turkish language support for automated buying and selling in Forex, commodities, and cryptocurrencies, and who can also teach me how to set it up and use it
Title Professional AI Automation Trading Bot for Forex & Crypto Solution Language Python (preferred) or MQL5 depending on integration requirements. Categories Expert Advisor (EA) for MetaTrader 5 Automated trading strategies AI/ML-based signal generation Risk management automation Required Skills Strong knowledge of MQL5/Python Experience with MetaTrader API integration Machine learning model deployment
I need an Ai trading bot for Binance and BTC on MT5 that also uses order flow data. It should also make use of TSI- Temporal indicator sampling and also it should make use of fundamental analysis in the process of signal generation
MT5 EA Developer for Structured ICT/SMC Market Logic Requirements Specification: I need an MT5 Expert Advisor only in MQL5. No indicator, no script, no DLL, and no external API. The EA must be built on a rule-based ICT/SMC-style framework with objective, backtestable logic. I am not looking for social-media-style ICT/SMC interpretation. I need a developer who can convert trading concepts into clear coding rules. The

Informações sobre o projeto

Orçamento
100 - 300 USD
Prazo
de 1 para 2 dias