ALGORITHM II: Difference between revisions

From MarketPawns
Jump to navigation Jump to search
mNo edit summary
m (Adding Step 12)
 
(33 intermediate revisions by the same user not shown)
Line 1: Line 1:
This article is not finished
This article is not finished
'''The N1 rule (N1 requirement) for Algorithm II is as follows:'''
  If point 3 is low, then the level of point 5 should be higher than point 1.
  If point 3 is high, then the level of point 5 should be lower than point 1.


For an accurate understanding of the algorithm, you should get acquainted with UMG General Concepts.
For an accurate understanding of the algorithm, you should get acquainted with UMG General Concepts.


==='''Step I. Search For Point 3 of the External Attraction Model (EAM) and the Sarting Point of the Previous Trend.'''===
==='''Step I. Search For Point 3 of the External Attraction Model (EAM) and the Sarting Point of the Previous Trend.'''===
: '''1.1.''' The program looks for the first possible extreme, satisfying Single Bar Rule. Such an extreme is a candidate for potential point 3 ( potential t.3).
: '''1.1.''' The program looks for the first possible extreme, satisfying Single Bar Rule. Such an extreme is a candidate for potential point 3 ( potential t.3).
: '''1.2.''' Next, the program checks the bars from right to left (i.e., in the past) from the bar containing the extreme candidate for point 3 to one of the following events:
: '''1.2.''' Next, the program checks the bars from right to left (i.e., in the past) from the bar containing the extreme candidate for point 3 to one of the following events:
:: '''1.2.1.''' Found the last intersection (breakthrough) point by the price level of the candidate for point 3.
:: '''1.2.1.''' Found the last intersection (breakthrough) point by the price level of the candidate for point 3.
::In this case, the report displays:  
::In this case, the report displays:  
Line 21: Line 14:
:: PREVdata: NoFullDataPrev  
:: PREVdata: NoFullDataPrev  
:: The program proceeds to substep 1.3.
:: The program proceeds to substep 1.3.
:: '''1.2.1.''' The price checked 300 bars preceding point 3, but the level of step 3 did not intersect at this segment. The program looks for an absolute extreme (opposite to step 3) on the segment from the 300th bar before point 3 to point 3. The program proceeds to substep 1.3.
:: '''1.2.3.''' The price checked 300 bars preceding point 3 <ref>The depth of the search for the extreme confirming point 3 of EAM model</ref>, but the level of step 3 did not intersect at this segment. The program looks for an absolute extreme (opposite to step 3) on the segment from the 300th bar before point 3 to point 3. The program proceeds to substep 1.3.
 
: '''1.3.''' The program looks for an absolute extreme (opposite to point 3 extreme) on the segment:
: '''1.3.''' The program looks for an absolute extreme (opposite to point 3 extreme) on the segment:
::- from the last intersection by the price level of the candidate for point 3 (inclusive) (if coming from 1.2.1.), or :: - from the starting point of the chart (if coming from 1.2.2.), or :: - from 300 bars to point 3 (if coming from 1.2.3.) :: to point 3 (excluding).
::- from the last intersection by the price level of the candidate for point 3 (inclusive) (if came from 1.2.1.), or  
:: - from the starting point of the chart (if came from 1.2.2.), or  
:: - from 300 bars(if came from 1.2.3.)  
:: to point 3 (excluding).
:: '''1.3.1.''' Absolute extreme found. The candidate for point 3 is confirmed; moreover, the found confirming extreme is the assumed (if coming from 1.2.2. or 1.2.3.) starting point of the preceding trend.'''
:: '''1.3.1.''' Absolute extreme found. The candidate for point 3 is confirmed; moreover, the found confirming extreme is the assumed (if coming from 1.2.2. or 1.2.3.) starting point of the preceding trend.'''
::The program checks for the absence of extremes equal to point 3 between the assumed starting point of the previous trend and point 3.  
::The program checks for the absence of extremes equal to point 3 between the assumed starting point of the previous trend and point 3.  
Line 31: Line 26:
::'''1.3.2.''' Absolute extreme not found. This point 3 is discarded.'''
::'''1.3.2.''' Absolute extreme not found. This point 3 is discarded.'''
::Simultaneously with step 1, the program launches the search for the next potential point 3.
::Simultaneously with step 1, the program launches the search for the next potential point 3.
==='''Step II. Search For Potentioal Points 5 and 4 ''' ===
'''The Orientation rule (N1 requirement) for Algorithm II is as follows:'''
  If point 3 is low, then the level of point 5 should be higher than point 3.
  If point 3 is high, then the level of point 5 should be lower than point 3.
'''Search for Point 5.''' The bar following the bar of Point 3 (and in repeated applications of this step - the bar specified in this algorithm) is checked for not overcoming the level of point 3 (since  N1 requirement for Algorithm II must be observed).
:'''2.1.''' If the price has overcome the level of point 3, the program discards the considered step 3 (due to N1 requirement).
:'''2.2.''' If N1 requirement is met for the analyzed bar, it is checked for compliance with N1 requirement as a potential point 5 (hereafter - point 5 or t.5).
::'''2.2.1.''' If the analyzed bar is not an extreme according to N1 requirement (as a potential point 5), the program checks the next bar from the beginning of step 2.
::'''2.2.2.''' If the analyzed bar is determined as an extreme according to N1 requirement (as a potential point 5), then this bar is checked for reaching (but not necessarily overcoming) the level of point 3. There are 2 options:
:::'''2.2.2.1.''' If the level of point 3 is reached, the program analyzes the next bar according to this step (i.e., from the beginning of step 2).
:::'''2.2.2.2.''' If the level of point 3 is not reached, the analyzed bar is a potential point 5, and the program moves to substep 2.3.
:'''2.3. Search for Point 4.''' The program searches for a bar, which was the last to cross the level of the considered potential point 5. Let's denote this bar as lcb5 (line-crossing-bar-5). If lcb5 coincides with the bar of point 3, we denote the bar following lcb5 as look4. Otherwise, look4 = lcb5. The program searches for a bar with the maximum (if point 3 is low) or minimum (if point 3 is high) price in the interval from lcb5 to potential point 5. Then this bar is checked for being an extreme according to N1 requirement as a potential pont 4 (hereafter – point 4 or t.4). There are 2 options:
::'''2.3.1.''' The bar is an absolute extreme (as a potential point 4). In this case, potential point 4 is found.
:::'''2.3.1.1.''' If step 2 has already been determined (this is possible when this step is triggered during the search for an alternative model), the program checks the line chart for extra points in the section from step 2 to step 4. There are 2 options:
::::'''2.3.1.1.A.''' If extra points are found, the program processes the next bar after potential point 5 according to step 2.
::::'''2.3.1.1.B.''' Extra intersections are not found; the program moves to substep 2.4.
:::'''2.3.1.2.''' If substep 2.3.1. is triggered during the search for the basic model, the program moves to substep 2.4.
::'''2.3.2.''' The bar is not an absolute extreme (as a potential point 4). In this case, the program looks for another candidate for point 5 according to this step (i.e., according to step 2).
If the program has processed 50 bars in a row according to this step (step 2), and the program has not moved to another step of the algorithm, then this potential point 3 is discarded.
If there are 150 or more bars<ref>Continuous search range of t.5 in one iteration for EAM model</ref> between potential point 3 and the analyzed bar, and potential points 4 and 5 are not found, then this potential point 3 is discarded.
:'''2.4.''' Real-Time Verification of t.5
:The potential t.5 bar is checked for the presence of bars between the analyzed bar and the potential t.4 bar, which contain price values more distant (or even equally distant) from the potential t.4 than the most distant from t.4 value of the analyzed bar. This is a check of the potential t.5 for beeing the '''potential absolute extreme'''. The following options are possible:
::'''2.4.1.''' If the extreme is potentially absolute, the program proceeds to step 3.
::'''2.4.2.''' If the extreme is not potentially absolute, the program checks the next bar starting from this step (i.e., step 2).
===''' Step III. Confirmation of Point 4. Searching for Alternative t.5 and t.5" '''===
The program checks whether the bar of potential t.5 has reached the level of t.4. Two scenarios are possible:
:'''3.1.''' The Bar of Potential t.5 Has Reached t.4.
:In this case:
::The model is built through absolute t.5.
::The t.5 bar confirms t.4. The presence of a bar confirming t.4 indicates that:
::Point 4 is confirmed,
::Point 5 is confirmed.
::The program proceeds to sub-step 3.3 (since there is already possible to display the model through t.5 on the chart).
:'''3.2.''' The Bar of Potential t.5 Has Not Reached t.4. 
:In this case, the program checks the next bar for reaching the level of t.4. The following options are possible:
::'''3.2.1. The Considered Bar Reaches the Level of Potential t.4.
::In this case:
:::The model is built through absolute t.5.
:::The considered bar confirms t.4. The presence of a bar confirming t.4 indicates that:
:::Point 4 is confirmed,
:::Point 5 is confirmed.
::The program proceeds to sub-step 3.3.ext, but first goes through sub-step 3.3.
::'''3.2.2.''' The Considered Bar Does Not Reach the Level of t.4.
::In this case the program checks the next bar for overcoming the level of potential t.5. Two scenarios are possible:
:::'''3.2.2.1.''' If the t.5 level is overcome, the analyzed bar is considered as a new potential t.5. The program processes this bar according to step 2.
:::'''3.2.2.2.''' If the t.5 level is not overcome, the analyzed bar is checked for reaching the level of t.4 according to sub-step 3.2.
::In parallel (i.e., an additional branch is created), the program proceeds to sub-step 3.3 (since there is already an option to display the model through t.5 on the chart). The model in this branch receives a "draw_flag" label.
:'''3.3.''' Construction of the Trend Line (TL). 
:A Trend Line (TL) is constructed from t.3 to t.5. Each bar between t.3 and t.5 is checked for breaking the TL. Two scenarios are possible:
::'''3.3.1.'''The Price Crosses the TL.
::In this case, the TL through t.3 is not constructed. The program searches for a candidate for point 3' (hereafter - t.3'). T.3' is selected in such a way that the TL' (constructed from t.3' to t.5) is not crossed by the price in the 3-5 segment. Rule No.1 for t.3' is not applied. T.3' cannot belong to the same bar as t.4. Two scenarios are possible:
:::'''3.3.1.1.''' T.3' is found, this model is classified as built through t.3'. The program proceeds to step 4, or to sub-step 3.3.extended if coming from 3.2.
:::'''3.3.1.2.''' T.3' is not found. In this case, the program searches for new potential t.5 and t.4 according to step 2.
::'''3.3.2.''' The Price Does Not Break the TL.
::In this case, this model is classified as built through t.3 (absolute extreme). The program proceeds to step 4, or to sub-step 3.3.ext. if current algorithm line is coming from 3.2.
::'''3.3.ext. Additional Trend Line Construction Through t.5".'''
::If:
::*The t.5 bar does not exceed the range of t.4;
::*At the time of model calculation, the level of t.4 is confirmed, then this model is checked for the possibility of constructing an additional Trend Line (TL) through t.5". Note: If t.4 is not confirmed, this model should be recalculated upon the appearance of a bar that confirms it's t.4.
::''' Definition: Point 5" '''
::Point 5" can lie in the segment between t.5 and the point confirming t.4. On this segment, a point is searched that meets the following requirements:
::''' Rule for Selecting Point 5" High '''
::To the left of the bar containing t.5", the nearest high should be above the level of t.5.
::To the right of t.5", at least one nearest high should be below or equal to t.5. ::If the nearest high is equal to the level of t.5, then the next high should again be below or equal to the level of t.5, until at least one bar is strictly below the level of t.5.
::''' Rule for Selecting Point 5" Low '''
::To the left of the bar containing t.5", the nearest low should be below the level of the extreme.
::To the right of t.5", at least one nearest low should be above or equal to t.5. If the nearest low is equal to the level of t.5, then the next low should again be above or equal to the level of t.5, until at least one bar is strictly above the level of t.5.
::''' Special Cases for Point 5" '''
::Point 5" may belong to a bar that has broken the level of t.4 (but only the first of such bars). If the bar of potential t.5" breaks the level of calculated t.6 from t.5, then it is impossible to construct a TL through t.5" for this model (this model does not contain such a point).
:::'''3.3.ext.1.''' Additional TL Calculation
:::If a bar is found that fits the rule for selecting 5", an additional TL is calculated for the potential t.5" (hereafter TL"). This line is checked for the absence of breaks in the segment from t.3/3'' to potential t.5".
:::::'''3.3ext.1.a.''' If there is an intersection, the program moves to check the next bar as a potential t.5".
:::::'''3.3ext.1.b.''' If there is no intersection, the found bar is compared with the previous candidate for t.5" (if there was one in the previous iteration of the cycle). If the considered bar is closer to the level of t.4 than the candidate for t.5", then the considered bar becomes the new candidate for t.5".
:::The check of bars continues in a cycle until a bar confirming t.4 is reached. If a candidate for t.5 is found as a result of the check, the program moves to sub-step 3.3ext.1.1; otherwise, it moves to step 4.
::::'''3.3ext.1.1.''' If the analyzed model is built through t.3', a candidate for t.3" is sought in the segment t.3-t.3', through which such a line to t.5" can be built that will not have price intersections in the segment t.3-t.3".
:::::'''3.3ext.1.1.1.''' If a candidate for t.3" is found, where there are no intersections, a check is made for the intersection of TL" by the bar following t.5".
::::::'''3.3.ext.1.1.1.A.''' If there are intersections, t.5" is declared canceled, and the next one is sought according to sub-step 3.3.ext.
::::::'''3.3.ext.1.1.1.B.''' Otherwise, the program moves to step 13.2.
:::::'''3.3.ext.1.1.2.''' If a suitable t.3" is not found, a re-search for a candidate for t.5" is carried out according to sub-steps 3.3.ext., but in this case, if a candidate for t.5" was found, it becomes a canceled candidate for t.5". The new candidate must already be further from t.4 than the previously discarded ones.
::::'''3.3ext.1.2.''' If the analyzed model is built through t.3, a check is made for the intersection of TL'' by the bar following t.5".
:::::'''3.3ext.1.2.A.''' If there are intersections, t.5" is declared as canceled t.5', and the next one is sought according to sub-step 3.3.ext.
:::::'''3.3ext.1.2.B.''' If there are no intersections, the algorithm moves to step 13.2.
:::'''3.3.ext.2.''' TL'' is checked for price intersections in the segment between t.5 (inclusive) and potential t.5" (hereafter segment 5-5").
::::'''3.3.ext.2.1.''' If there is an intersection, then this 5" is filtered out. A re-search for a candidate for t.5" is carried out according to sub-steps 3.3.ext., but in this case, the new candidate must already be further from t.4 (in terms of time) than the previously discarded ones.
::::'''3.3.ext.2.2.''' If there are no intersections of TL" in the segment 5-5", then t.5" is found.
::::In this case, the report displays: EAM5" EAM5"
::::The program moves to step 4.
::::'''3.3.ext.2.3.''' If t.5" is not found, the program moves to step 4.
==='''Step IV: Searching for Potential Foundation Blocks.'''===
====Initial Check====
First, it is necessary to check for the presence of a fixed t.2. If it exists, it means we are in a branch for searching for alternative models.
::'''4.0.1.''' If t.2 is defined in the model, proceed to step 6.
::'''4.0.2.''' If t.2 is not defined, the program moves to step 4.1.
====Examination of Extremes====
On the preceding trend, extremes are checked sequentially from right to left (i.e., into the past) from t.3 (or from another analyzed bar in repeated applications of this step) according to the N1 bar rule (as a candidate for t.2). Each found candidate for t.2 is checked for the presence of a confirming extreme (which also serves as t.1) according to the following algorithm:
::'''4.1.0.''' An extreme candidate for t.2 is found.
::'''4.1.1.''' The point of the last intersection <ref>High or low of a bar, repeating or crossing high or low of t.2 bar – is an intersection</ref> of the candidate's level with the price is found. In this case, the program looks for the absolute maximum (if t.2 is a minimum, i.e., t.2 is low) or the absolute minimum (if t.2 is a maximum, i.e., t.2 is high) in the segment from the last intersection of the t.2 level with the price to t.2.
:::'''4.1.1.1.''' Maximum/minimum not found. In this case, the program discards this candidate for t.2.
:::'''4.1.1.2.''' Maximum/minimum found. In this case, the potential t.2 is confirmed.
:::'''4.1.2.''' The program reaches the starting point of the chart.
:::'''4.1.3.''' The check reaches the boundary of the Depth of Search for t.1 <ref>"Search depth t.1 for EAM models" is set in the Calculation Parameters. It is calculated in bars from the bar of the considered potential t.2. By default, this value is 50 bars.</ref> for the model and none of the above events (4.1.1. or 4.1.2.) occurred.
::'''4.2.''' The search for Foundation Blocks (i.e., points 1 and 2, a.k.a FB) continues until one of the events in steps 4.2.A, 4.2.B or 4.2.C. occurs.
:::'''4.2.A. The check reaches the bar containing the (presumed) starting point of the preceding trend (from sub-step 1.2.2.1.). This point is not considered as a potential t.2
:::'''4.2.B.''' The check reaches the bar that intersects the level of the presumed point 4 of the considered model.
:::'''4.2.C.''' A bar that is located at a distance (by time) from T.3 greater than or equal to X* (distance from T.3 to t.4), where x is the parameter set in the settings <ref> This is the "Time Ratio of 23 to 24"(by default it is 3)</ref>.
::=== Results ===
::As a result of the search for potential t.2 (i.e., upon the occurrence of4.2.A, 4.2.B or 4.2.C.), two scenarios are possible:
:::'''4.2.1. ''' One or more pairs of potential t.2 and t.1 are found (potential Foundation Blocks). The program moves to step 5.
:::'''4.2.2. ''' No potential Foundation Blocks are found. In this case, the program looks for the next potential t.5 according to step 2.
=== '''Step V. Search for Presupposition''' ===
Presupposition is an optional part of the EAM.
The program attempts to construct Presuppositions from all available candidates for t.2.
==== Presupposition Search Algorithm ====
The program takes each potential t.2 of the EAM (as part of a potential FB) as a t.1 of Presupposition (hereinafter t.1p). In other words, the program tries to construct Presuppositions from each of the t.2.
Initially, the most recent (rightmost) potential t.2 (or the one specified in the algorithm if we have returned to the beginning of the Step V in the cycle) in the EAM is taken as a potential t.1p. If there are no more unconfirmed t.1p, the algorithm proceeds to Step 6.
: '''5.1.''' The program sequentially checks bars from left to right (into the future) from the potential t.1p to t.3 of EAM model (excluding t.3) for being an extreme according to the N1 rule as point 3 of the Presupposition (hereinafter t.3p).
: '''N1 rule for the Presupposition points'''
: If t.1p is low, t.3p must be below t.1p.
: If t.1p is high, t.3p must be above t.1p.
:: '''5.1.1.''' If the potential t.3p is not found, the program considers the next (to the left of the previous) potential t.2 of the EAM (within the FB) as t.1p.
:: If the potential t.3p is not found, and there are no more potential FBs, the algorithm proceeds to Step 6.
:: '''5.1.2.''' Once the potential t.3p is found, the program searches for point 2 of the Presupposition (hereinafter t.2p) as an extreme with the maximum/minimum price on the segment from t.1p to t.3p (hereinafter segment 1p-3p).
:: If a suitable extreme is not found, the algorithm looks for the next potential t.3p for the previously found t.1p.
:: If a maximum/minimum is found, it is checked for for being an extreme (as t.2p).
:: There are two possibilities:
::: '''5.1.2.1.''' The bar is an absolute extreme. In this case, a potential t.2p is found, and the program proceeds to step 5.2.
::: '''5.1.2.2.''' The bar is not an extreme. In this case, the program looks for another candidate for t.3p for the previously found t.1p following the instructions in 5.1.
: '''5.2.''' The program constructs a line from t.1p to t.3p and checks it for price crossings on the segment from t.1p to t.3 of the EAM (including t.3 of EAM).
:: '''5.2.1.''' If this lines price crossings are found, the program looks for a new candidate for t.3p for the previously found t.1p following the instructions in sub-step 5.1.
:: '''5.2.2.''' If there are no price crossings, the program proceeds to sub-step 5.3.
: '''5.3.''' The program searches for a potential point 4 of the Presupposition (t.4p) according to the N1 rule on the segment from t.3p to t.3 in the VMP (including t.3).
: If t.1p is low, t.4p must be below t.2p. Each subsequent candidate for t.4p must be below the previous candidate for t.4p.
: If t.1p is high, t.4p must be above t.2p. Each subsequent candidate for t.4p must be above the previous candidate for t.4p.
: Possible scenarios:
:: '''5.3.A.''' If the potential t.4p coincides with t.3 in the EAM, t.4p is confirmed (found), and the program proceeds to sub-step 5.3.1.
:: '''5.3.B.''' If the potential t.4p does not coincide with t.3 in the EAM (i.e., it is located before it), the program looks for an opposite-direction potential t.4p extreme on the segment from the potential t.4p (excluding it) to the bar where the price again reached the value of the potential t.4p (excluding it).
:: There are two possibilities:
::: '''5.3.B.1.''' If the opposite-direction extreme is found, t.4p is confirmed (found), and the program proceeds to sub-step 5.3.1.
::: '''5.3.B.2.''' If the opposite-direction extreme is not found, the program looks for a new potential t.4p following the instructions in sub-step 5.3.1.
:: '''5.3.1.''' If t.4p is found, the program constructs a line from t.2p to t.4p and checks it for price crossings on the segment from t.1p (excluding it) to t.3 in the VMP (including t.3).
::: If unnecessary intersections are found, the program looks for the next potential t.4p on the segment following the instructions in 5.3.
::: If no unnecessary intersections are found, the algorithm proceeds to sub-step 5.4.
:: '''5.3.2.''' Check for Absolute Level
:: The program checks the bar of the potential t.3p for absoluteness. The level of t.3p should not be exceeded by the price on the segment between t.3p and potential t.4p (excluding it).
::: '''5.3.2.1.''' If the level of t.3p is exceeded, the potential t.3p is discarded, and the program looks for a new t.3p following the instructions in sub-step 5.1. and further according to the algorithm.
:::: '''5.3.2.2.''' If the level of t.3p is not exceeded, t.3p is confirmed, t.4p is confirmed, and the algorithm proceeds to sub- step 5.4.
====  Presupposition Verification ====
: ''' 5.4.''' Presuppositions undergo the following checks:
:: '''A.''' - Bars t.1p, t.2p, t.3p must follow each other.
:: '''B.''' - The distance in levels between t.1 and t.2 (hereinafter rank 12) must be at least the value of the Minimum Distance between t.1 and t.2 Levels of the Presupposition, which is set in the Calculation Parameters, from the distance between t.4 and t.5 levels of the EAM model(this is rank 45).
:: If all checks are successful, the Presupposition is found. If there are no unchecked t.1p left, the algorithm proceeds to Step 6.
:: If there are no unchecked t.1p left, the algorithm proceeds to Step 6.
=== '''Step VI. Check for AL price crossings''' ===
==== '''6 alfa.''' ====
First it is necessary to check for the presence of a fixed t.2.  If it exists, it means we are in a branch of searching for alternative models.
The potential Aims Line (from t.2 to t.4), hereinafter referred to as AL, is calculated, and then:
: '''6 alfa.1.''' AL Crossing Check
:: '''6 alfa.1. A.''' - If there are no  AL price crossings, the algorithm proceeds to step 6 alfa.2.
:: '''6 alfa.1. B.''' - If AL is crossed, the next potential t.5 is determined according to Step 2, starting from bar t.5+2.
: '''6.2. alfa.''' Distance Check for AL and TL Intersection
: If:
:: - TL and AL of the model do not intersect on the right (in the future) or
:: - the ratio of the distance in bars between t.2 and t.4 to the distance between t.4 and the calculated point 6 is less than the default value of the parameter "Minimum ratio of t.2-t.4 to t.4-t.6 EAM," then the search for alternative models is terminated. Otherwise, the program proceeds to Step 9.
====''' In the general case (no precviously fixed t.2)''' ====
The program performs the following checks for each of the potential FBs:
: '''6.1.''' AL Price Crossing Check (not just touching)
: If AL intersects with the price on the segment between t.2 and t.4, this pair of candidates for t.1 and t.2 (this FB) is rejected.
:: '''6.1.A.''' If FBs are found that give AL without intersections, the algorithm proceeds to step 6.2.
:: '''6.1.B.''' If there are no suitable FBs, the algorithm looks for a new t.5 according to Step 2.
: '''6.2.''' Checking for intersection of AL and TL (hereinafter referred to as calculated point 6) with each other on the right (in the future) along the time axis.
: If the ratio of the distance in bars between t.2 and t.4 to the distance between t.4 and the calculated t.6 is less than the default value of the parameter "Minimum ratio of t.2-t.4 to t.4-t.6 VMP," then these candidates for t.1 and t.2 are rejected.
: The following scenarios are possible:
:: '''6.2.A.''' One or several potential FBs remain - in this case, the program proceeds to Step 7.
:: '''6.2.B.''' There are no potential FBs left - in this case, the program looks for a new potential t.5, starting from Step 2 and onwards.
=== '''Step VII. Dtermintaion of FB's with and without 2X5''' ===
The program checks for the intersection of the bodies of candles at t.2 and t.5 (hereinafter referred to as 2x5). If there is only one potential FB, determining FB with 2x5 is not required, and the program proceeds to Step 8.
:'''7.1.''' If there are multiple potential BOs, some of which have 2x5 and some do not, those potential BOs that have 2x5 are filtered out, and the program proceeds to Step 8.
:'''7.2.''' If all potential FBs have 2x5, then all are filtered out except the one whose t.2 level is closer to the t.3 level. The program proceeds to
=== '''Step VIII: Filtering Based on Presupposition''' ===
The algorithm checks whether Presuppositions have been found for the analyzed model.
:'''8.0.''' If no Presuppositions are found, the program proceeds to Step 9.
:'''8.1.''' The model has one or more Presuppositions. For each Presupposition program checks if the available candidates for t.2 belong to the interval between the last price level intersection of t.1p and t.1p itself (t.1p can also be used as t.2 EAM).
::'''8.1.1.''' There are candidates for t.2 that belong to the interval between the last price level intersection of t.1p and t.1p itself. Such a Presupposition is retained.
::'''8.1.2.''' There are no candidates for t.2 within the specified interval. In this case, such a Presupposition is discarded and not further considered (meaning the model has no Presupposition).
:'''8.2.''' If after checking all Presuppositions according to sub-step 8.1., there are one or more Presuppositions with candidates in t.2 within the interval between the last price level intersection of t.1p and t.1p itself (inclusive), then:
: - Among such Presuppositions, only the one with t.1p occurring later on the time axis is considered further;
: - Only those candidates that belong to the interval between the last price level intersection of t.1p and t.1p itself are retained as t.2 candidates for the remaining Presupposition.
::'''8.2.1.''' If only one potential FB remains, the model is confirmed.
::'''8.2.2.''' If more than one potential FB remains, the program proceeds to Step 9.
=== '''Step IX. Search for Embedded Models in EAM''' ===
:'''9.1.''' If EAM is constructed through t.3', then the interval from EAM's t.3 is checked for the presence of models according to Algorithm I, for which the following conditions are simultaneously satisfied. In the paragraph below, the numbers I and II in parentheses next to the model points denote the algorithm to which the model with this point belongs:
: - If the model according to Algorithm I contains t.5, then its t.5 should precede or coincide with the t.5 of the analyzed EAM.
: - t.4 does not lie beyond t.4 of the analyzed EAM; (bar of t.4(I) cannot coincide with bar of t.3(II), but can coincide with bar of t.4(II);
: -t.1 lies before t.3' of the analyzed model (if it coincides with bar of t.3', then it is not suitable anymore) (t.1(I) can coincide with t.3(II), but cannot coincide with t.3'(II)
If there are more than 5 models, those with the time distance from t.1 to t.4 greater than others are considered embedded models.
::'''9.1.1.''' If models are not found, then EAM does not have an embedded primary model.
::'''9.1.2.''' If the model/s is/are found, EAM is given the status of "Models described near the Primary model."
::'''9.1.3.''' If EAM has one or more embedded models, models among them built from EAM's t.3 are searched for meeting one of the following criteria:
::: A. Having a trendline breakthrough in the interval before t.3' of the analyzed model;
::: B. Having an intersection of candle bodies at points 2 and 5 (hereinafter 2x5).
::: C. If the embedded model has a rank 45 greater than the ranks of 12 and 25 of the same model.
::: '''9.1.3.1.''' In the presence of one of these criteria, the model is Specific based on the 1st criterion.
::: '''9.1.3.2.''' In the absence of the specified criteria, the model is Normal based on the 1st criterion.
:: '''9.1.4.''' If there is a model according to Algorithm I on the interval from t.3 to t.3' of the EAM, aligned with the preceding EAM trend, and with points t.1-t.4 lying on the interval 3-3' EAM (inclusive), then this EAM is Specific based on the 2nd criterion.
:: In the absence of the specified criteria, the model is Normal based on the 2nd criterion.
: Upon completion of all checks in step 9.1., the program proceeds to step 10.
:'''9.2.''' If EAM is constructed through t.3, the program proceeds to step 10.
=== '''Step X. Search for Preceding Models''' ===
The program identifies all possible models in accordance with Algorithm I, starting from the initial point of the preceding trend or starting from the presumed initial point of the preceding trend, see step 1.3.).
In these models, the actual t.6 is determined, and if there was no intersection of TL, the Presumed t.6 (P6supp) is used. The algorithm for finding the actual/presumed t.6 is described in the branch of Algorithm I, see substep 5.3.
Models on the preceding trend, with TL coinciding with t.3 of the EAM, are (directly) preceding for the given TL.
Models on the preceding trend, for which the following conditions are simultaneously satisfied:
: - actual/presumed t.6 precedes or equals t.3 of the EAM;
: - t.6 is aligned with t.4 of the EAM;
: - the level of t.6 lies between the levels of t.3 and t.4 of the EAM;
are considered preceding corrective for the given EAM.
From models with the same t.4 and the same t.1, the model with the later t.1 is selected as the priority for choosing t.2.
From the remaining models with the same t.4, only the very last model is considered as both preceding and preceding corrective (i.e., with a later t.5 or without t.5) – one of each type.
If there are more than 10 preceding and preceding corrective models (rarely encountered), only the last ones are selected (the last ones are determined as those with t.4 lying later than others).
=== '''Step XI. Final Selection of t.2 - Checking the Convergence of LT and LC''' ===
:'''11.0.''' If t.2 is known (for example, in the case algorythm is searching for an alternative model), proceed directly to sub-step 11.3.
::'''11.0.1.''' The program finds the closest (in terms of time from t.1 of these models to t.3 of EAM) linked model on the preceding trend (preceding or preceding corrective).
:::'''11.0.1.1.''' If
:::: - the closest preceding model is a model from the beginning of the trend, and
:::: - t.2 of the analyzed model is before or coincides with t.1 of the preceding model, then the considered t.2 is rejected, and this branch of the algorithm is terminated.
:::'''11.0.1.2.''' If
:::: - the closest preceding model is a trend model, and
:::: - t.2 of the analyzed model is before t.1 of the preceding model,
::: the considered t.2 is rejected, and this branch of the algorithm is terminated.
If EAM contains a presupposition, the program proceeds to sub-item 11.2. If the model does not contain a presupposition, the program proceeds to sub-item 11.1.
:'''11.1.''' The program finds the closest (in terms of time from t.1 of these models to t.3 of EAM) linked model on the preceding trend (preceding or preceding corrective).
::'''11.1.0.''' If there are no preceding models, the program proceeds to sub-step 11.2.
::'''11.1.1.''' If the nearest found linked model (preceding or preceding corrective) is a model from the beginning of the trend (not a trend model), then all potential t.2 that coincide with the bar of t.1 of the found linked model or are located before t.1 of the found linked model are rejected. The program proceeds to sub-step 11.2.
::'''11.1.2.''' If the nearest found linked model (preceding or preceding corrective) is a trend model, then
:::'''11.1.2.1.''' In the presence of a preceding trend model, all t.2 that are located before t.1 of the preceding model are rejected. In other words, t.1 of the preceding can be t.2 of EAM, and the points located before t.1 of the preceding - cannot be t.2 of EAM. The program proceeds to sub-step 11.2.
:::'''11.1.2.2.''' In the presence of a preceding corrective trend model, the program looks for another linked model on the preceding trend of EAM (the next in terms of distance) and analyzes it as a reference for this item (11.1.). In other words, the program returns to the beginning of sub-step 11.1.
::'''11.2.1.''' For specific models, the program selects the most distant t.2 in terms of time from t.3.
::'''11.2.2.''' For simple models, the program selects t.2 that is as close as possible in time to t.3.
:'''11.3.''' The algorithm calculates the level of intersection of TL and AL of EAM (hereinafter – the calculated t.6). The position of t.5 in relation to the level of the calculated t.6 is checked. There are two possible scenarios:
::'''11.3.1.''' If the bar of t.5 does not penetrate the level of the calculated t.6, the program checks if t.5'' has been found (in sub-step 13). Two scenarios are possible:
:::'''11.3.1.1.''' If t.5'' has been found, then the program checks for the convergence of TL'' and AL.
::::'''11.3.1.1.А.''' If the lines converge, then the program checks for the extent of convergence of TL'' and AL. If the ratio of the distance in bars between t.2 and t.4 to the distance between t.4 and the calculated t.6'' is less than the default value of the parameter "Minimum ratio of t.2-t.4 to t.4-t.6 EAM", then t.5'' is rejected.
::::'''11.3.1.1.Б.''' If TL'' and AL diverge, then t.5'' is rejected.
:::: In the end of sub-step 11.3.1.1. - the program records the model.
:::'''11.3.1.2.''' If t.5'' is absent, the program records the model.
::'''11.3.2.''' If the bar of t.5 penetrates the level of the calculated t.6, then this EAM cannot be built, and the program looks for a new t.5 by processing the bar following the bar of t.5 according to sub-step 2 and further according to the algorithm.
=== '''Step XII. Search for Alternative Models''' ===
A new model is sought, but the points t.3, t.2, and Presupposition (if any) are retained. This is the final step of Algorithm II.
==References==
<references />

Latest revision as of 00:14, 5 January 2024

This article is not finished

For an accurate understanding of the algorithm, you should get acquainted with UMG General Concepts.

Step I. Search For Point 3 of the External Attraction Model (EAM) and the Sarting Point of the Previous Trend.[edit | edit source]

1.1. The program looks for the first possible extreme, satisfying Single Bar Rule. Such an extreme is a candidate for potential point 3 ( potential t.3).
1.2. Next, the program checks the bars from right to left (i.e., in the past) from the bar containing the extreme candidate for point 3 to one of the following events:
1.2.1. Found the last intersection (breakthrough) point by the price level of the candidate for point 3.
In this case, the report displays:
PREVdata: FullDataPrev
The program proceeds to substep 1.3.
1.2.2. The program reached the starting point of the chart (i.e., the price did not intersect the level of point 3 after the starting point of the chart).
In this case, the report displays:
PREVdata: NoFullDataPrev
The program proceeds to substep 1.3.
1.2.3. The price checked 300 bars preceding point 3 [1], but the level of step 3 did not intersect at this segment. The program looks for an absolute extreme (opposite to step 3) on the segment from the 300th bar before point 3 to point 3. The program proceeds to substep 1.3.
1.3. The program looks for an absolute extreme (opposite to point 3 extreme) on the segment:
- from the last intersection by the price level of the candidate for point 3 (inclusive) (if came from 1.2.1.), or
- from the starting point of the chart (if came from 1.2.2.), or
- from 300 bars(if came from 1.2.3.)
to point 3 (excluding).
1.3.1. Absolute extreme found. The candidate for point 3 is confirmed; moreover, the found confirming extreme is the assumed (if coming from 1.2.2. or 1.2.3.) starting point of the preceding trend.
The program checks for the absence of extremes equal to point 3 between the assumed starting point of the previous trend and point 3.
1.3.1.1. If such an extreme is found, this candidate for point 3 is discarded, and this point 3 is discarded.
1.3.1.2. If such an extreme is not found, the program proceeds to step 2.
1.3.2. Absolute extreme not found. This point 3 is discarded.
Simultaneously with step 1, the program launches the search for the next potential point 3.

Step II. Search For Potentioal Points 5 and 4 [edit | edit source]

The Orientation rule (N1 requirement) for Algorithm II is as follows:
 If point 3 is low, then the level of point 5 should be higher than point 3. 
 If point 3 is high, then the level of point 5 should be lower than point 3.

Search for Point 5. The bar following the bar of Point 3 (and in repeated applications of this step - the bar specified in this algorithm) is checked for not overcoming the level of point 3 (since N1 requirement for Algorithm II must be observed).

2.1. If the price has overcome the level of point 3, the program discards the considered step 3 (due to N1 requirement).
2.2. If N1 requirement is met for the analyzed bar, it is checked for compliance with N1 requirement as a potential point 5 (hereafter - point 5 or t.5).
2.2.1. If the analyzed bar is not an extreme according to N1 requirement (as a potential point 5), the program checks the next bar from the beginning of step 2.
2.2.2. If the analyzed bar is determined as an extreme according to N1 requirement (as a potential point 5), then this bar is checked for reaching (but not necessarily overcoming) the level of point 3. There are 2 options:
2.2.2.1. If the level of point 3 is reached, the program analyzes the next bar according to this step (i.e., from the beginning of step 2).
2.2.2.2. If the level of point 3 is not reached, the analyzed bar is a potential point 5, and the program moves to substep 2.3.
2.3. Search for Point 4. The program searches for a bar, which was the last to cross the level of the considered potential point 5. Let's denote this bar as lcb5 (line-crossing-bar-5). If lcb5 coincides with the bar of point 3, we denote the bar following lcb5 as look4. Otherwise, look4 = lcb5. The program searches for a bar with the maximum (if point 3 is low) or minimum (if point 3 is high) price in the interval from lcb5 to potential point 5. Then this bar is checked for being an extreme according to N1 requirement as a potential pont 4 (hereafter – point 4 or t.4). There are 2 options:
2.3.1. The bar is an absolute extreme (as a potential point 4). In this case, potential point 4 is found.
2.3.1.1. If step 2 has already been determined (this is possible when this step is triggered during the search for an alternative model), the program checks the line chart for extra points in the section from step 2 to step 4. There are 2 options:
2.3.1.1.A. If extra points are found, the program processes the next bar after potential point 5 according to step 2.
2.3.1.1.B. Extra intersections are not found; the program moves to substep 2.4.
2.3.1.2. If substep 2.3.1. is triggered during the search for the basic model, the program moves to substep 2.4.
2.3.2. The bar is not an absolute extreme (as a potential point 4). In this case, the program looks for another candidate for point 5 according to this step (i.e., according to step 2).
If the program has processed 50 bars in a row according to this step (step 2), and the program has not moved to another step of the algorithm, then this potential point 3 is discarded.
If there are 150 or more bars[2] between potential point 3 and the analyzed bar, and potential points 4 and 5 are not found, then this potential point 3 is discarded.
2.4. Real-Time Verification of t.5
The potential t.5 bar is checked for the presence of bars between the analyzed bar and the potential t.4 bar, which contain price values more distant (or even equally distant) from the potential t.4 than the most distant from t.4 value of the analyzed bar. This is a check of the potential t.5 for beeing the potential absolute extreme. The following options are possible:
2.4.1. If the extreme is potentially absolute, the program proceeds to step 3.
2.4.2. If the extreme is not potentially absolute, the program checks the next bar starting from this step (i.e., step 2).

Step III. Confirmation of Point 4. Searching for Alternative t.5 and t.5" [edit | edit source]

The program checks whether the bar of potential t.5 has reached the level of t.4. Two scenarios are possible:

3.1. The Bar of Potential t.5 Has Reached t.4.
In this case:
The model is built through absolute t.5.
The t.5 bar confirms t.4. The presence of a bar confirming t.4 indicates that:
Point 4 is confirmed,
Point 5 is confirmed.
The program proceeds to sub-step 3.3 (since there is already possible to display the model through t.5 on the chart).
3.2. The Bar of Potential t.5 Has Not Reached t.4.
In this case, the program checks the next bar for reaching the level of t.4. The following options are possible:
3.2.1. The Considered Bar Reaches the Level of Potential t.4.
In this case:
The model is built through absolute t.5.
The considered bar confirms t.4. The presence of a bar confirming t.4 indicates that:
Point 4 is confirmed,
Point 5 is confirmed.
The program proceeds to sub-step 3.3.ext, but first goes through sub-step 3.3.
3.2.2. The Considered Bar Does Not Reach the Level of t.4.
In this case the program checks the next bar for overcoming the level of potential t.5. Two scenarios are possible:
3.2.2.1. If the t.5 level is overcome, the analyzed bar is considered as a new potential t.5. The program processes this bar according to step 2.
3.2.2.2. If the t.5 level is not overcome, the analyzed bar is checked for reaching the level of t.4 according to sub-step 3.2.
In parallel (i.e., an additional branch is created), the program proceeds to sub-step 3.3 (since there is already an option to display the model through t.5 on the chart). The model in this branch receives a "draw_flag" label.
3.3. Construction of the Trend Line (TL).
A Trend Line (TL) is constructed from t.3 to t.5. Each bar between t.3 and t.5 is checked for breaking the TL. Two scenarios are possible:
3.3.1.The Price Crosses the TL.
In this case, the TL through t.3 is not constructed. The program searches for a candidate for point 3' (hereafter - t.3'). T.3' is selected in such a way that the TL' (constructed from t.3' to t.5) is not crossed by the price in the 3-5 segment. Rule No.1 for t.3' is not applied. T.3' cannot belong to the same bar as t.4. Two scenarios are possible:
3.3.1.1. T.3' is found, this model is classified as built through t.3'. The program proceeds to step 4, or to sub-step 3.3.extended if coming from 3.2.
3.3.1.2. T.3' is not found. In this case, the program searches for new potential t.5 and t.4 according to step 2.
3.3.2. The Price Does Not Break the TL.
In this case, this model is classified as built through t.3 (absolute extreme). The program proceeds to step 4, or to sub-step 3.3.ext. if current algorithm line is coming from 3.2.


3.3.ext. Additional Trend Line Construction Through t.5".
If:
  • The t.5 bar does not exceed the range of t.4;
  • At the time of model calculation, the level of t.4 is confirmed, then this model is checked for the possibility of constructing an additional Trend Line (TL) through t.5". Note: If t.4 is not confirmed, this model should be recalculated upon the appearance of a bar that confirms it's t.4.
Definition: Point 5"
Point 5" can lie in the segment between t.5 and the point confirming t.4. On this segment, a point is searched that meets the following requirements:
Rule for Selecting Point 5" High
To the left of the bar containing t.5", the nearest high should be above the level of t.5.
To the right of t.5", at least one nearest high should be below or equal to t.5. ::If the nearest high is equal to the level of t.5, then the next high should again be below or equal to the level of t.5, until at least one bar is strictly below the level of t.5.
Rule for Selecting Point 5" Low
To the left of the bar containing t.5", the nearest low should be below the level of the extreme.
To the right of t.5", at least one nearest low should be above or equal to t.5. If the nearest low is equal to the level of t.5, then the next low should again be above or equal to the level of t.5, until at least one bar is strictly above the level of t.5.
Special Cases for Point 5"
Point 5" may belong to a bar that has broken the level of t.4 (but only the first of such bars). If the bar of potential t.5" breaks the level of calculated t.6 from t.5, then it is impossible to construct a TL through t.5" for this model (this model does not contain such a point).
3.3.ext.1. Additional TL Calculation
If a bar is found that fits the rule for selecting 5", an additional TL is calculated for the potential t.5" (hereafter TL"). This line is checked for the absence of breaks in the segment from t.3/3 to potential t.5".
3.3ext.1.a. If there is an intersection, the program moves to check the next bar as a potential t.5".
3.3ext.1.b. If there is no intersection, the found bar is compared with the previous candidate for t.5" (if there was one in the previous iteration of the cycle). If the considered bar is closer to the level of t.4 than the candidate for t.5", then the considered bar becomes the new candidate for t.5".
The check of bars continues in a cycle until a bar confirming t.4 is reached. If a candidate for t.5 is found as a result of the check, the program moves to sub-step 3.3ext.1.1; otherwise, it moves to step 4.
3.3ext.1.1. If the analyzed model is built through t.3', a candidate for t.3" is sought in the segment t.3-t.3', through which such a line to t.5" can be built that will not have price intersections in the segment t.3-t.3".
3.3ext.1.1.1. If a candidate for t.3" is found, where there are no intersections, a check is made for the intersection of TL" by the bar following t.5".
3.3.ext.1.1.1.A. If there are intersections, t.5" is declared canceled, and the next one is sought according to sub-step 3.3.ext.
3.3.ext.1.1.1.B. Otherwise, the program moves to step 13.2.
3.3.ext.1.1.2. If a suitable t.3" is not found, a re-search for a candidate for t.5" is carried out according to sub-steps 3.3.ext., but in this case, if a candidate for t.5" was found, it becomes a canceled candidate for t.5". The new candidate must already be further from t.4 than the previously discarded ones.
3.3ext.1.2. If the analyzed model is built through t.3, a check is made for the intersection of TL by the bar following t.5".
3.3ext.1.2.A. If there are intersections, t.5" is declared as canceled t.5', and the next one is sought according to sub-step 3.3.ext.
3.3ext.1.2.B. If there are no intersections, the algorithm moves to step 13.2.
3.3.ext.2. TL is checked for price intersections in the segment between t.5 (inclusive) and potential t.5" (hereafter segment 5-5").
3.3.ext.2.1. If there is an intersection, then this 5" is filtered out. A re-search for a candidate for t.5" is carried out according to sub-steps 3.3.ext., but in this case, the new candidate must already be further from t.4 (in terms of time) than the previously discarded ones.
3.3.ext.2.2. If there are no intersections of TL" in the segment 5-5", then t.5" is found.
In this case, the report displays: EAM5" EAM5"
The program moves to step 4.
3.3.ext.2.3. If t.5" is not found, the program moves to step 4.

Step IV: Searching for Potential Foundation Blocks.[edit | edit source]

Initial Check[edit | edit source]

First, it is necessary to check for the presence of a fixed t.2. If it exists, it means we are in a branch for searching for alternative models.

4.0.1. If t.2 is defined in the model, proceed to step 6.
4.0.2. If t.2 is not defined, the program moves to step 4.1.

Examination of Extremes[edit | edit source]

On the preceding trend, extremes are checked sequentially from right to left (i.e., into the past) from t.3 (or from another analyzed bar in repeated applications of this step) according to the N1 bar rule (as a candidate for t.2). Each found candidate for t.2 is checked for the presence of a confirming extreme (which also serves as t.1) according to the following algorithm:

4.1.0. An extreme candidate for t.2 is found.
4.1.1. The point of the last intersection [3] of the candidate's level with the price is found. In this case, the program looks for the absolute maximum (if t.2 is a minimum, i.e., t.2 is low) or the absolute minimum (if t.2 is a maximum, i.e., t.2 is high) in the segment from the last intersection of the t.2 level with the price to t.2.
4.1.1.1. Maximum/minimum not found. In this case, the program discards this candidate for t.2.
4.1.1.2. Maximum/minimum found. In this case, the potential t.2 is confirmed.
4.1.2. The program reaches the starting point of the chart.
4.1.3. The check reaches the boundary of the Depth of Search for t.1 [4] for the model and none of the above events (4.1.1. or 4.1.2.) occurred.
4.2. The search for Foundation Blocks (i.e., points 1 and 2, a.k.a FB) continues until one of the events in steps 4.2.A, 4.2.B or 4.2.C. occurs.
4.2.A. The check reaches the bar containing the (presumed) starting point of the preceding trend (from sub-step 1.2.2.1.). This point is not considered as a potential t.2
4.2.B. The check reaches the bar that intersects the level of the presumed point 4 of the considered model.
4.2.C. A bar that is located at a distance (by time) from T.3 greater than or equal to X* (distance from T.3 to t.4), where x is the parameter set in the settings [5].
=== Results ===
As a result of the search for potential t.2 (i.e., upon the occurrence of4.2.A, 4.2.B or 4.2.C.), two scenarios are possible:
4.2.1. One or more pairs of potential t.2 and t.1 are found (potential Foundation Blocks). The program moves to step 5.
4.2.2. No potential Foundation Blocks are found. In this case, the program looks for the next potential t.5 according to step 2.

Step V. Search for Presupposition[edit | edit source]

Presupposition is an optional part of the EAM. The program attempts to construct Presuppositions from all available candidates for t.2.

Presupposition Search Algorithm[edit | edit source]

The program takes each potential t.2 of the EAM (as part of a potential FB) as a t.1 of Presupposition (hereinafter t.1p). In other words, the program tries to construct Presuppositions from each of the t.2.

Initially, the most recent (rightmost) potential t.2 (or the one specified in the algorithm if we have returned to the beginning of the Step V in the cycle) in the EAM is taken as a potential t.1p. If there are no more unconfirmed t.1p, the algorithm proceeds to Step 6.

5.1. The program sequentially checks bars from left to right (into the future) from the potential t.1p to t.3 of EAM model (excluding t.3) for being an extreme according to the N1 rule as point 3 of the Presupposition (hereinafter t.3p).
N1 rule for the Presupposition points
If t.1p is low, t.3p must be below t.1p.
If t.1p is high, t.3p must be above t.1p.
5.1.1. If the potential t.3p is not found, the program considers the next (to the left of the previous) potential t.2 of the EAM (within the FB) as t.1p.
If the potential t.3p is not found, and there are no more potential FBs, the algorithm proceeds to Step 6.
5.1.2. Once the potential t.3p is found, the program searches for point 2 of the Presupposition (hereinafter t.2p) as an extreme with the maximum/minimum price on the segment from t.1p to t.3p (hereinafter segment 1p-3p).
If a suitable extreme is not found, the algorithm looks for the next potential t.3p for the previously found t.1p.
If a maximum/minimum is found, it is checked for for being an extreme (as t.2p).
There are two possibilities:
5.1.2.1. The bar is an absolute extreme. In this case, a potential t.2p is found, and the program proceeds to step 5.2.
5.1.2.2. The bar is not an extreme. In this case, the program looks for another candidate for t.3p for the previously found t.1p following the instructions in 5.1.
5.2. The program constructs a line from t.1p to t.3p and checks it for price crossings on the segment from t.1p to t.3 of the EAM (including t.3 of EAM).
5.2.1. If this lines price crossings are found, the program looks for a new candidate for t.3p for the previously found t.1p following the instructions in sub-step 5.1.
5.2.2. If there are no price crossings, the program proceeds to sub-step 5.3.
5.3. The program searches for a potential point 4 of the Presupposition (t.4p) according to the N1 rule on the segment from t.3p to t.3 in the VMP (including t.3).
If t.1p is low, t.4p must be below t.2p. Each subsequent candidate for t.4p must be below the previous candidate for t.4p.
If t.1p is high, t.4p must be above t.2p. Each subsequent candidate for t.4p must be above the previous candidate for t.4p.
Possible scenarios:
5.3.A. If the potential t.4p coincides with t.3 in the EAM, t.4p is confirmed (found), and the program proceeds to sub-step 5.3.1.
5.3.B. If the potential t.4p does not coincide with t.3 in the EAM (i.e., it is located before it), the program looks for an opposite-direction potential t.4p extreme on the segment from the potential t.4p (excluding it) to the bar where the price again reached the value of the potential t.4p (excluding it).
There are two possibilities:
5.3.B.1. If the opposite-direction extreme is found, t.4p is confirmed (found), and the program proceeds to sub-step 5.3.1.
5.3.B.2. If the opposite-direction extreme is not found, the program looks for a new potential t.4p following the instructions in sub-step 5.3.1.
5.3.1. If t.4p is found, the program constructs a line from t.2p to t.4p and checks it for price crossings on the segment from t.1p (excluding it) to t.3 in the VMP (including t.3).
If unnecessary intersections are found, the program looks for the next potential t.4p on the segment following the instructions in 5.3.
If no unnecessary intersections are found, the algorithm proceeds to sub-step 5.4.
5.3.2. Check for Absolute Level
The program checks the bar of the potential t.3p for absoluteness. The level of t.3p should not be exceeded by the price on the segment between t.3p and potential t.4p (excluding it).
5.3.2.1. If the level of t.3p is exceeded, the potential t.3p is discarded, and the program looks for a new t.3p following the instructions in sub-step 5.1. and further according to the algorithm.
5.3.2.2. If the level of t.3p is not exceeded, t.3p is confirmed, t.4p is confirmed, and the algorithm proceeds to sub- step 5.4.

Presupposition Verification[edit | edit source]

5.4. Presuppositions undergo the following checks:
A. - Bars t.1p, t.2p, t.3p must follow each other.
B. - The distance in levels between t.1 and t.2 (hereinafter rank 12) must be at least the value of the Minimum Distance between t.1 and t.2 Levels of the Presupposition, which is set in the Calculation Parameters, from the distance between t.4 and t.5 levels of the EAM model(this is rank 45).
If all checks are successful, the Presupposition is found. If there are no unchecked t.1p left, the algorithm proceeds to Step 6.
If there are no unchecked t.1p left, the algorithm proceeds to Step 6.

Step VI. Check for AL price crossings[edit | edit source]

6 alfa.[edit | edit source]

First it is necessary to check for the presence of a fixed t.2. If it exists, it means we are in a branch of searching for alternative models.

The potential Aims Line (from t.2 to t.4), hereinafter referred to as AL, is calculated, and then:

6 alfa.1. AL Crossing Check
6 alfa.1. A. - If there are no AL price crossings, the algorithm proceeds to step 6 alfa.2.
6 alfa.1. B. - If AL is crossed, the next potential t.5 is determined according to Step 2, starting from bar t.5+2.
6.2. alfa. Distance Check for AL and TL Intersection
If:
- TL and AL of the model do not intersect on the right (in the future) or
- the ratio of the distance in bars between t.2 and t.4 to the distance between t.4 and the calculated point 6 is less than the default value of the parameter "Minimum ratio of t.2-t.4 to t.4-t.6 EAM," then the search for alternative models is terminated. Otherwise, the program proceeds to Step 9.

In the general case (no precviously fixed t.2)[edit | edit source]

The program performs the following checks for each of the potential FBs:

6.1. AL Price Crossing Check (not just touching)
If AL intersects with the price on the segment between t.2 and t.4, this pair of candidates for t.1 and t.2 (this FB) is rejected.
6.1.A. If FBs are found that give AL without intersections, the algorithm proceeds to step 6.2.
6.1.B. If there are no suitable FBs, the algorithm looks for a new t.5 according to Step 2.
6.2. Checking for intersection of AL and TL (hereinafter referred to as calculated point 6) with each other on the right (in the future) along the time axis.
If the ratio of the distance in bars between t.2 and t.4 to the distance between t.4 and the calculated t.6 is less than the default value of the parameter "Minimum ratio of t.2-t.4 to t.4-t.6 VMP," then these candidates for t.1 and t.2 are rejected.
The following scenarios are possible:
6.2.A. One or several potential FBs remain - in this case, the program proceeds to Step 7.
6.2.B. There are no potential FBs left - in this case, the program looks for a new potential t.5, starting from Step 2 and onwards.

Step VII. Dtermintaion of FB's with and without 2X5[edit | edit source]

The program checks for the intersection of the bodies of candles at t.2 and t.5 (hereinafter referred to as 2x5). If there is only one potential FB, determining FB with 2x5 is not required, and the program proceeds to Step 8.

7.1. If there are multiple potential BOs, some of which have 2x5 and some do not, those potential BOs that have 2x5 are filtered out, and the program proceeds to Step 8.
7.2. If all potential FBs have 2x5, then all are filtered out except the one whose t.2 level is closer to the t.3 level. The program proceeds to

Step VIII: Filtering Based on Presupposition[edit | edit source]

The algorithm checks whether Presuppositions have been found for the analyzed model.

8.0. If no Presuppositions are found, the program proceeds to Step 9.
8.1. The model has one or more Presuppositions. For each Presupposition program checks if the available candidates for t.2 belong to the interval between the last price level intersection of t.1p and t.1p itself (t.1p can also be used as t.2 EAM).
8.1.1. There are candidates for t.2 that belong to the interval between the last price level intersection of t.1p and t.1p itself. Such a Presupposition is retained.
8.1.2. There are no candidates for t.2 within the specified interval. In this case, such a Presupposition is discarded and not further considered (meaning the model has no Presupposition).
8.2. If after checking all Presuppositions according to sub-step 8.1., there are one or more Presuppositions with candidates in t.2 within the interval between the last price level intersection of t.1p and t.1p itself (inclusive), then:
- Among such Presuppositions, only the one with t.1p occurring later on the time axis is considered further;
- Only those candidates that belong to the interval between the last price level intersection of t.1p and t.1p itself are retained as t.2 candidates for the remaining Presupposition.
8.2.1. If only one potential FB remains, the model is confirmed.
8.2.2. If more than one potential FB remains, the program proceeds to Step 9.

Step IX. Search for Embedded Models in EAM[edit | edit source]

9.1. If EAM is constructed through t.3', then the interval from EAM's t.3 is checked for the presence of models according to Algorithm I, for which the following conditions are simultaneously satisfied. In the paragraph below, the numbers I and II in parentheses next to the model points denote the algorithm to which the model with this point belongs:
- If the model according to Algorithm I contains t.5, then its t.5 should precede or coincide with the t.5 of the analyzed EAM.
- t.4 does not lie beyond t.4 of the analyzed EAM; (bar of t.4(I) cannot coincide with bar of t.3(II), but can coincide with bar of t.4(II);
-t.1 lies before t.3' of the analyzed model (if it coincides with bar of t.3', then it is not suitable anymore) (t.1(I) can coincide with t.3(II), but cannot coincide with t.3'(II)

If there are more than 5 models, those with the time distance from t.1 to t.4 greater than others are considered embedded models.

9.1.1. If models are not found, then EAM does not have an embedded primary model.
9.1.2. If the model/s is/are found, EAM is given the status of "Models described near the Primary model."
9.1.3. If EAM has one or more embedded models, models among them built from EAM's t.3 are searched for meeting one of the following criteria:
A. Having a trendline breakthrough in the interval before t.3' of the analyzed model;
B. Having an intersection of candle bodies at points 2 and 5 (hereinafter 2x5).
C. If the embedded model has a rank 45 greater than the ranks of 12 and 25 of the same model.
9.1.3.1. In the presence of one of these criteria, the model is Specific based on the 1st criterion.
9.1.3.2. In the absence of the specified criteria, the model is Normal based on the 1st criterion.
9.1.4. If there is a model according to Algorithm I on the interval from t.3 to t.3' of the EAM, aligned with the preceding EAM trend, and with points t.1-t.4 lying on the interval 3-3' EAM (inclusive), then this EAM is Specific based on the 2nd criterion.
In the absence of the specified criteria, the model is Normal based on the 2nd criterion.
Upon completion of all checks in step 9.1., the program proceeds to step 10.
9.2. If EAM is constructed through t.3, the program proceeds to step 10.

Step X. Search for Preceding Models[edit | edit source]

The program identifies all possible models in accordance with Algorithm I, starting from the initial point of the preceding trend or starting from the presumed initial point of the preceding trend, see step 1.3.). In these models, the actual t.6 is determined, and if there was no intersection of TL, the Presumed t.6 (P6supp) is used. The algorithm for finding the actual/presumed t.6 is described in the branch of Algorithm I, see substep 5.3.

Models on the preceding trend, with TL coinciding with t.3 of the EAM, are (directly) preceding for the given TL.

Models on the preceding trend, for which the following conditions are simultaneously satisfied:

- actual/presumed t.6 precedes or equals t.3 of the EAM;
- t.6 is aligned with t.4 of the EAM;
- the level of t.6 lies between the levels of t.3 and t.4 of the EAM;

are considered preceding corrective for the given EAM.

From models with the same t.4 and the same t.1, the model with the later t.1 is selected as the priority for choosing t.2.

From the remaining models with the same t.4, only the very last model is considered as both preceding and preceding corrective (i.e., with a later t.5 or without t.5) – one of each type.

If there are more than 10 preceding and preceding corrective models (rarely encountered), only the last ones are selected (the last ones are determined as those with t.4 lying later than others).

Step XI. Final Selection of t.2 - Checking the Convergence of LT and LC[edit | edit source]

11.0. If t.2 is known (for example, in the case algorythm is searching for an alternative model), proceed directly to sub-step 11.3.
11.0.1. The program finds the closest (in terms of time from t.1 of these models to t.3 of EAM) linked model on the preceding trend (preceding or preceding corrective).
11.0.1.1. If
- the closest preceding model is a model from the beginning of the trend, and
- t.2 of the analyzed model is before or coincides with t.1 of the preceding model, then the considered t.2 is rejected, and this branch of the algorithm is terminated.
11.0.1.2. If
- the closest preceding model is a trend model, and
- t.2 of the analyzed model is before t.1 of the preceding model,
the considered t.2 is rejected, and this branch of the algorithm is terminated.

If EAM contains a presupposition, the program proceeds to sub-item 11.2. If the model does not contain a presupposition, the program proceeds to sub-item 11.1.

11.1. The program finds the closest (in terms of time from t.1 of these models to t.3 of EAM) linked model on the preceding trend (preceding or preceding corrective).
11.1.0. If there are no preceding models, the program proceeds to sub-step 11.2.
11.1.1. If the nearest found linked model (preceding or preceding corrective) is a model from the beginning of the trend (not a trend model), then all potential t.2 that coincide with the bar of t.1 of the found linked model or are located before t.1 of the found linked model are rejected. The program proceeds to sub-step 11.2.
11.1.2. If the nearest found linked model (preceding or preceding corrective) is a trend model, then
11.1.2.1. In the presence of a preceding trend model, all t.2 that are located before t.1 of the preceding model are rejected. In other words, t.1 of the preceding can be t.2 of EAM, and the points located before t.1 of the preceding - cannot be t.2 of EAM. The program proceeds to sub-step 11.2.
11.1.2.2. In the presence of a preceding corrective trend model, the program looks for another linked model on the preceding trend of EAM (the next in terms of distance) and analyzes it as a reference for this item (11.1.). In other words, the program returns to the beginning of sub-step 11.1.
11.2.1. For specific models, the program selects the most distant t.2 in terms of time from t.3.
11.2.2. For simple models, the program selects t.2 that is as close as possible in time to t.3.
11.3. The algorithm calculates the level of intersection of TL and AL of EAM (hereinafter – the calculated t.6). The position of t.5 in relation to the level of the calculated t.6 is checked. There are two possible scenarios:
11.3.1. If the bar of t.5 does not penetrate the level of the calculated t.6, the program checks if t.5 has been found (in sub-step 13). Two scenarios are possible:
11.3.1.1. If t.5 has been found, then the program checks for the convergence of TL and AL.
11.3.1.1.А. If the lines converge, then the program checks for the extent of convergence of TL and AL. If the ratio of the distance in bars between t.2 and t.4 to the distance between t.4 and the calculated t.6 is less than the default value of the parameter "Minimum ratio of t.2-t.4 to t.4-t.6 EAM", then t.5 is rejected.
11.3.1.1.Б. If TL and AL diverge, then t.5 is rejected.
In the end of sub-step 11.3.1.1. - the program records the model.
11.3.1.2. If t.5 is absent, the program records the model.
11.3.2. If the bar of t.5 penetrates the level of the calculated t.6, then this EAM cannot be built, and the program looks for a new t.5 by processing the bar following the bar of t.5 according to sub-step 2 and further according to the algorithm.


Step XII. Search for Alternative Models[edit | edit source]

A new model is sought, but the points t.3, t.2, and Presupposition (if any) are retained. This is the final step of Algorithm II.

References[edit | edit source]

  1. The depth of the search for the extreme confirming point 3 of EAM model
  2. Continuous search range of t.5 in one iteration for EAM model
  3. High or low of a bar, repeating or crossing high or low of t.2 bar – is an intersection
  4. "Search depth t.1 for EAM models" is set in the Calculation Parameters. It is calculated in bars from the bar of the considered potential t.2. By default, this value is 50 bars.
  5. This is the "Time Ratio of 23 to 24"(by default it is 3)