Vorstab gefolgt von Innenstäben
void ArrayFuellen() // | { //0 | double low1, high1, opn2, cls2, low3, high3 ;// locale Variable | //------------------------------------------------------------------------------------------------+ // | for(int i = 1 ; i <= Min1[0][0] ; i++) {//1 | // | Min1[i][0] = iTime(Markt,1,i) ;// Eintragen des jeweiligen Bar | Min1[i][1] = iOpen(Markt,1,i) ;// | Min1[i][2] = iLow(Markt,1,i) ;// | Min1[i][3] = iHigh(Markt,1,i) ;// | Min1[i][4] = iClose(Markt,1,i) ;// | Min1[i][5] = iVolume(Markt,1,i) ;// | Min1[i][6] = iBars(Markt,1)-1 ;}//1 | // | for ( i= Min1[0][0]; i>1 ; i--) {//1Innenstäbe suchen | low1 = Min1[i][2] ; high1 = Min1[i][3] ;// Low & High des möglichen Vorstab | // | for ( int j= i-1; j>0 ; j--) {//2die folgenden Stäbe vergleichen | opn2 = Min1[j][1];cls2 = Min1[j][4] ;// Open und Close des möglichen Innenstabes | if ((( low1 < opn2) && (low1 < cls2)) && // wenn Open und Close des untersuchten Stabes | (( high1 > opn2) && (high1 > cls2))) {//3zwischen Hgh und Low des Referenzstabes, dann | // ist es ein Innenstab zu (i) | Min1[i][7] = 1;Min1[j][8] = 1 ;// Flag für Vorstab und Innenstab eintragen | }//3 | if (!((( low1 < opn2) && (low1 < cls2)) && // wenn Open und Close des untersuchten Stabes | (( high1 > opn2) && (high1 > cls2)))) {//3zwischen Hgh und Low des Referenzstabes, dann | i = j+1 ;// Zeiger nachziehen | break ;}//3 | }//2"for j" es handelt sich um einen NormalBar | }//1"for i" | // | //------------------------------------------------------------------------------------------------+ return ;// | } //0 | //------------------------------------------------------------------------------------------------+
In Min1[0][0] ist die Adresse der letzten Zeile enthalten .
Es wird ein Array gefüllt und anschliessend nach Innenstäben durchsucht . Der erste Stab, dem dann
die Innenstäber folgen, wird in der Spalte [7] markiert, die Innenstäbe dann in der Spalte [8] .
Lobo
2 Comments
Recommended Comments