Volume based custom indicator request

MQL4 지표

명시

Hi,
This is an indicator that is going to closely analyse tick volume or 'Volumes' in MT4 on the 1 min chart i.e. try to capture a surge in incoming ticks . Primarily, I am looking to detect 'Volume threshold/Price range" anomalies.

The indicator is a simple one, it is just that I have provided an extensive explanation so as to be clear.
-Please read the requirements carefully.
-I would prefer the indicator to be completed as early as possible.
- The code be accessible and reasonably well commented, so that I can understand it .
- Be as resource efficient as possible as I intend to use this on 28 currency pair 1 min charts at the same time.


Brief explanation -  - the 'Volume threshold/Price range' anomaly or volumes change over a given price range - 
Volume threshold = how much did the 'Volumes' count change by during the last volumes update
Price range = a specified price range. Example = 0.1 pip or 0.2 pips

Note - After much study,research and also coding in C# on another platform (I do not know mql4). I have realised that at times a 'big packet of volumes' would suddenly show up, lets call this a "volume packet'. To be more specific - the "volumes' count in MT4 is not always the amount of changes in Bid and Ask price , some times (not often) a volume packet of 10 etc would show up without a corresponding change in price. This 'volume packet' also needs to be detected. 
Hence, the value must be obtained from the MT4 Volumes as it is in the platform, as opposed to manually trying to record the number of bid and ask price changes, this is important.

 

Section 1 - Data and Calculation explanation - 

Back to the Volume/price anomaly explanation. 

This part below mainly explains the primary data to be extracted and calculated. Other 'items that need to be calculated later on' will be based on the data calculated below - 


Chart - 1 min EUR/USD

User specified options
Volume threshold = 100
Price range = 0.1 pips  (Note - indicator should be able to calculate 0.1 pips for both 5 and 3 decimal currency pairs)
Volumes Packet threshold = 10

Time1 = 10:00:00
Volume =  242
Candle high = 1.13019
Candle Low = 1.13010



What I am interested in is the tick activity for the duration of @10:00 for a given specified price range. Lets assume specified price range =  0.1 pips. Of course, the indicator works in real-time/Live and needs to have the data stored for the period for which it was online/connected to the server i.e. from when logged in and until the platform is shutdown.

@ 10:00:00 =  no volume 
@ 10:00:01 =  no volume
@ 10:00:02 =  New volumes = 1,Total Volumes count = 1, Candle open Price  = 1.13014
@ 10:00:03 =  no new volume, Total Volumes count = 1,
@ 10:00:04 =  no new volume, Total Volumes count = 1,
@ 10:00:05  = a new 'volume packet' of 19 arrives. Now Total Volumes count = 20.  This has triggered the Volumes Packet threshold of 10 and hence needs to be logged an detected.
@ 10:00:06  = New volume = 1,Total volumes count to 21 
.......
@10:00:27 = Total Volumes count = 50 i.e. during the last 21 seconds volume has increased by 29 over several New Volumes updates.

@10:00:28 (or on the next volumes entry/update) =New volumes = 100, Total Volumes count rises up to 150. During this time price has changed by just 0.1 pips . This is what I am interested in i.e. a sudden surge in the volume count by 100 while price has just moved by 0.1 pips. This needs to be detected and logged as it meets the 'Volume Threshold" and 'Price range' Criteria.

.......

@10:00:59 = Total Volumes count = 242 i.e. during the last 31 seconds volume has increased by 92 over several New Volumes updates.



Note = It is important to note that in reality, because volumes primarily deal with price updates and several price updates can occur in a second, a sequential second by second time stamp reference such as above will most likely not be accurate. It would more or less need to be analysed by change in 'volume updates' as opposed to change in volumes per second.

Example = 

Volume update 1 = 1 , Total volumes count =  1, price change = 0.2 pips (1.13014 - 1.13016)
volume update 2 = 19, Total volumes count =  20 ,price change = 0.1 pips .(1.13016 - 1.13015). Gets detected as it triggers the Volumes Packet Threshold, which is independent of price range.
.....
volume update 10 = 100, Total volumes count =  150, price range = 0.1 (1.13018-1.13019). This needs to be detected and logged as it meets the 'Volume Threshold" value of 100 and 'Price range' Criteria of 0.1 pips.


If price range is set to 0.3 pips and Volume threshold = 100. The indicator will be triggered if  - over the span of movement over the last 0.3 pip range the total volumes count has increased by 100.


NOTE - It is a 'Price range' that needs to be considered i.e. for a price range of 0.3 the price can change 100 times etc in between 1.13010 and 1.13013, it is valid as long is stays within the range. The moment the price goes below 1.13010 or above 1.13013 a new entry should be started.
The price to be considered is with respect to the bid price or chart price.





Section 2 - What the indicator should display -

In all of the cases below - the user will be able to customise features such as colour,font, font size, histogram size and color etc


NOTE-----1) and 2) are 'on chart elements' i.e. the indicator values needs to be plotted on the chart

1) 3 levels of Volumes threshold(VT)/price range(PR).  Each can be customised to the user's requirements and can be switched off if required.

Level 1 - VT = 50, PR = 0.1  , display colour = blue
Level 2 - VT = 100, PR = 0.1   , display colour = green
Level 3 - VT = 150, PR = 0.1  , display colour =  red

The highest level recorded VT Value(NOT the input Threshold VT value) in the specified display colour will be displayed on the chart .

2) 3 Levels of packet value (PV). Each can be customised to the user's requirements and can be switched off if required.
Level 1 - PV = 5 , display colour = blue
Level 2 - PV = 10  , display colour = green
Level 3 - PV = 15, display colour =  red

The highest level recorded PV Value(NOT the input Threshold PV value) in the specified display colour will be displayed on the chart .

3) MM ratio.
   This is only for those candles that have  VT and PR values. 
   MM ratio formula = (recorded VT value/Total Volume of the candle). MM ratio can be SWITCHED ON OR OFF depending on the user.


NOTE - if a candle has 1) and 2) values. 1) will take priority over 2) i.e. 1) will be displayed and 2) will not be shown.

NOTE----4) and 5) are 'data window'  indicator elements or are histograms that will be shown in the indicator window. The user can choose to display i.e. either 3) or 4). BOTH CAN BE SWITCHED OFF ALSO AT THE SAME TIME. This is so that I can find out what are the ideal values for 1) and 2).

4) a histogram showing the highest VT/PR values for a given candle. Example if the Recorded VT value is 200, the histogram value  =  200.

5) a Histogram showing the highest PV  values for a given candle.


NOTE - For the ON chart displays for 1) ,2) and 5)  I am open to suggestions. For now I am thinking of a the following - 
 - a short white line showing the price level on the left side of the candle (from the center of the candle body through to the outside of the left side of the candle body, till it meets the next candle to its left. So the line will be only 1 candle in length ). This is the price  level when the indicator was triggered.
 - the recorded VT or PV along side the MM ratio value will be displayed on the chart i.e. above or below the candle. 
   VT and MM value will be displayed in the following format. VT/MM ratio i.e. if VT = 100 and Total Volume of the candle = 400. The displayed value will be = 100/0.25
   IF MM ratio value is switched off only VT value will be displayed.
   If the candle is bullish = VT/MMratio or PV value will be displayed above the high of the candle.
   If the candle is bearish = VT/MMratio or PV value will be displayed below the low of the candle.

   The distance should be 0.1 or 0.2 pips above or below the high or low of the candle i.e. the User should be able to specify this.




응답함

1
개발자 1
등급
(7)
프로젝트
9
0%
중재
4
0% / 100%
기한 초과
0
무료
게재됨: 1 코드
2
개발자 2
등급
(45)
프로젝트
59
42%
중재
5
0% / 60%
기한 초과
12
20%
무료
비슷한 주문
Project Description: I have a fully working Pine Script for TradingView called MFHA 3-Step Market Structure Strategy V2 . I need it converted into MT5 , with the logic kept as close to the Pine version as possible. What I need: MT5 Indicator Exact oscillator logic Multi-timeframe logic using 4H, 15M, and 1M EMA filter MTF EMA dashboard RSI display Buy and sell visual signals Background state/flash behavior where
The scanner will scan all currency base on MACD Diverdgent, my strength indicator and my better volume indicator. All this would be across all time frame and all currency pairs
I am looking to build a VWAP Scanner = Price close vs. VWAP Daily, Price close vs. VWAP Weekly, Price close vs. VWAP Monthly - Please allow me to choose the timeframe of analysis - If price closed above one of the VWAPs the box of the symbol must be blue. If below it is red. - Please order symbols automatically in dashboard from all blue (daily, weekly, monhtly) to all red (daily, weekly, monthly) - Please let me
I am looking for an experienced MQL5 developer to continue optimization work on an existing Expert Advisor (MQ5 source file available, 2.5MB). Important: This is NOT a project to build a new EA. The task is strictly to refine and improve the current system while keeping the core strategy intact. The EA is already functional and stable. A full code audit and baseline backtesting have already been done, and key
I am looking for an experienced MQL5 engineer to build a custom MetaTrader 5 indicator that scans historical price data and finds the best curve/shape match to the current price action, then projects the historical continuation forward as a forecast. This is not a standard bar-by-bar indicator and not a moving average/trendline tool. The goal is to compare the shape of price action curves across history, and
I need a very accurate MT5 boom and crash indicator which shows when to buy and when to sell with no repaint. The indicator should show with an arrow where to buy for boom just before the spike and sell for crash just before the spike
looking for a highly experienced mql5 developer to build a professional trading ea based on multi timeframe top down analysis and market structure concepts the system should combine higher timeframe context with lower timeframe execution and provide both precise logic and clean visual representation on chart ⸻ core requirements • implementation of multi timeframe logic higher timeframe bias combined with lower
I am looking for an experienced Pine Script developer to create a custom TradingView indicator based on a rule-based forex trading strategy. The strategy focuses on breakout and retest setups, combined with multi-timeframe confirmation for precise entries. Scope of Work Detect key support and resistance levels Identify strong breakout candles (close beyond level with momentum) Confirm valid retest of the broken level
🏆 HIRING: Quantitative Gold (XAU/USD) Trading Strategy Developer ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 📌 PROJECT OVERVIEW ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ I am building a professional trading signal platform (xtraderlab.com) and need an experienced quant trader or algo developer to design, code, and backtest a high-performance intraday Gold (XAU/USD) trading strategy. The strategy will be integrated into an existing
Manly 30 - 200 USD
ZigZag based on oscillators is needed The idea of ​​the indicator Create a ZigZag indicator, which is constructed based on extreme values determined using oscillators. It can use any classical normalized oscillator, which has overbought and oversold zones. The algorithm should first be executed with the WPR indicator, then similarly add the possibility to draw a zigzag using the following indicators: CCI Chaikin RSI

프로젝트 정보

예산
30 - 50 USD
기한
 2 일