Calculation of scores of support / resistance based on 3 instances of ZZ and FIBO levels

2020.02.12 Experts

Specification

I need the code for an EA that creates a system to estimate the strength of the resistance/support points based on 3 instances of the ZZ Swing points and their FIBO retracement levels.

See also the ZIP archive attached!!

Important note: the code needs to be very well commented, at every step, so that it is easy to follow and verify. This code is for MT4.

The code needs to be structured, creating and using functions for operating repetitive commands in order to keep the minimize the lines of code.

 

Phase 1:importing the ZZ points and the FIBO levels

The developer does not need to create ZZ and FIBO levels, as these are already calculated by an indicator which I already own and which I will provide to the developer.

The EA needs to use 3 instances of this indicator, which is based on ZZ Fast Indicator + FIBO retracement levels (with 3 different values of the deviation channel).

The default channel deviation levels of the 3 instances of ZZ Fast we will use will be:

Channel deviation 0.1 applied on H1 timeframe

Channel deviation 0.5 applied on H4 timeframe

Channel deviation 1.5 applied on D1 timeframe

The levels of the channel deviation will be editable from the code and the EA’s properties (so they need to be set up as input variables).

 

Phase 2: calculating the strength of resistance/support points which are in the proximity

The strength of the support/resistance will be calculated according to the scheme in the attached Excel spreadsheet (inside the ZIP archive). This spreadsheet provides the scores to be attributed in each type of situation.

 

Phase 3:establishing the perimeters of resistance/support and displaying the score based on current price

We will have 3 variables called “SurroundingPerimeterSize” (this is the prefix), one for each instance of the ZZ, that will store the distances around the points of resistance that will form the areas of resistance/support. These should be input variables, so that I can change their values in the EA’s properties.

For example:

ZZ Fast Channel depth: 0.1      Surrounding perimeter size for ZZ1: 10pips

ZZ Fast Channel depth: 0.5       Surrounding perimeter size for ZZ2: 25pips

ZZ Fast Channel depth: 1.5       Surrounding perimeter size for ZZ3: 100pips

 

The code will store in a variable and should display on the chart (and print in the journal) the current scores of resistance/support strength (based on the current price).

Examples:

        The score will be 0 if the current price is outside of any resistance/support perimeters.

        The score will be 5 if the current price is at less than 10 pips (see Excel) from the closest ZZ1 Point with Channel depth of 0.1.

        The score will be 12 if the current price is at less than 25 pips (see Excel) from the point where FIBO retracement of the ZZ2 with channel deviation of 0.5 (which is placed on H4) will be 38%

        The score will be 40 if the current price is at less than 40 pips (see Excel) from the point where FIBO retracement of the ZZ3 with channel deviation of 1.5 (which is placed on D1) will be 50%.

Etc.

There will be 3 scores stored in 3 separate variables:

-          one for Support Score

-          one for Resistance Score

-          one for the net score SupportScore-ResistanceScore

These scores need to be updated on every tick when displaying on the chart and on every candle when printing in the journal (so that we don’t overload the journal).

 

Phase 4: calculating, storing and displaying the current distances to the nearest resistance and support points

The code should use 6 variables (3 for support and 3 for resistance) in which to calculate the distances to the nearest support and resistance points for each of the 3 instances of the ZZ. These should be input variables, so that I can change their values in the EA’s properties.

This information should be displayed on the chart and printed in the journal. For example:

“Distance to the nearest resistance on ZZ Depth 0.1 is 35 pips”

“Distance to the nearest support on ZZ Depth 0.5 is 75 pips”

“Distance to the nearest resistance on ZZ Depth 1.5 is 150 pips”

Etc.

 

These distances need to be updated on every tick when displaying on the chart and on every candle when printing in the journal (so that we don’t overload the journal).

 See also the ZIP archive attached!!

 

 


Responded

1
Developer 1
2020.02.12
Rating
4.94
(589)
Projects
1023
74%
Arbitration
78
28% / 44%
Overdue
331
32%
Loaded
2
Developer 2
2020.02.12
Rating
4.94
(62)
Projects
83
35%
Arbitration
10
40% / 30%
Overdue
6
7%
Free
3
Developer 3
2020.02.14
Rating
5
(6)
Projects
9
0%
Arbitration
2
50% / 50%
Overdue
1
11%
Free
4
Developer 4
2020.02.14
Rating
4.93
(145)
Projects
189
45%
Arbitration
10
40% / 30%
Overdue
6
3%
Working

Project information

Budget
60 - 120 USD
VAT (21%): 12.6 - 25.2 USD
Total: 72.6 - 145.2 USD
For the developer
54 - 108 USD
Deadlines
from 3 to 8 day(s)

Customer

Placed orders5
Arbitrage count1