Wieso funktioniert Shift nicht. Der Parameter Shift ist der Bar für die du den CCI berechnen willst. 0 ist der aktuelle Bar, 1 der Bar davor usw.
Die 5 Zeilen-Liste ist keine Liste sondern die Definition der Funktion iCCI. Wenn du deinen Editor aufmachst und oben auf Hilfe klickst kommst du unter anderem zur MQL4-Referenz. Da gibst Du iCCI als Suchbegriff ein und findest ne Beschreibung der Funktion. Oder du klickst in deinem Code mit der Maus auf die Funktion iCCI (oder was auch immer dir unklar ist) und drückst F1. Dann geht ein Fenster auf und du bist sofort auf der Funktion/Beschreibung die du suchst. |
Liste der Anhänge anzeigen (Anzahl: 2)
Lassen wir den CCI einfach erst mal aussen vor.
Kann Jemand helfen den RVI einzubaun? |
RVI Refernce
Bsp. RVI Main unter RVI Signal Code:
bool rviDown (int period, int shift) Code:
if (rviDown(14,1)) |
Da gibt's keinen Unterschied zur Funktion iCCI(). Die Verwendung der Funktion iRVI() funktioniert genauso.
double iRVI( string symbol, // symbol int timeframe, // timeframe int period, // averaging period int mode, // line index int shift // shift ); Beispiel: Willst du den RVI für den aktuellen Chart im aktuellen Timeframe über 10 Perioden berechnen sieht das für den aktuellen Bar 0 so aus: double val=iRVI(NULL,0,10,MODE_MAIN,0); |
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
5-Zeilen Weise eingebaut. Sondern es werden die einzelnen Elemente, die Funktionen extra aufgerufen. Kanns nicht genau erklären, aber er wird in meinen EA anders eingefügt als mit Deinen 5 Zeilen. Deswegen ist das schon richtig: Code:
//CCI GV Code:
//CCI |
Zitat:
double iCCI( string symbol, // symbol int timeframe, // timeframe int period, // averaging period int applied_price, // applied price int shift // shift ); Ich habe mal den 3. Parameter fett markiert. In der Doku steht da int period // averaging period D.h. period steht für die Periodenangabe des Indikators, also die Anzahl der Kerzen, die in die Vergangenheit betrachtet werden sollen. 1. Ist Deine Periode nicht 100 und auch nicht -100 2. Gibt es keine!!!!!! negativen Perioden (schon daran müsstest Du erkennen, dass Du auf dem Holzweg bist) Mit double CCI = iCCI(_Symbol,_Period, InpCCIPeriod, CCI_Price, 1); wurden alle 5 Parameter (Zeilen) richtig angegeben. Aber ich (wir) verstehe(n) nicht, warum Du es nicht begreifen willst, dass für periode nicht die Indikatorlevels eingegeben werden dürfen? In Summe sind Deine Programmzeilen bzgl. double IL1 und double IL2 nach wie vor falsch und damit werden auch falsche Ergebnisse weiterverarbeitet. traderdoc |
Ok, wie gesagt:Vergessen wir das einfach. Ich werds später
rausfinden. Bitte lassen wir den CCI erst mal aussen vor. Bitte helft mir jetzt, den RVI einzubauen. Bitte Bitte Bitte! :rolleyes: Für Euch Progger muss es doch immer interessant sein, an EAs zu basteln. ;) |
Zitat:
Den RVI baust Du ein, wie die Zeile des CCI bzgl. double CCI. Das wirst Du aber nur erfolgreich bewältigen, wenn die Grundlagen bei Dir angekommen sind. Und wie man aus Deinem letzten Post erlesen kann, sind die noch nicht angekommen. Deine Vorgehensweise und Renitenz schreckt aber inzwischen alle Programmierer ab. Und wer ernsthaft programmiert, der bastelt nicht. traderdoc |
@MA-EA was ist da so schwer zu verstehen. Diese "vermeintlichen" 5 Zeilen sind nur eine Zeile im Programmcode:
double iRVI( string symbol, // symbol int timeframe, // timeframe int period, // averaging period int mode, // line index int shift // shift ); Dies ist nichts weiter als die Beschreibung der Funktion iRVI mit der Erläuterung der erforderlichen Parameter. Im Programmcode schreibt man das dann natürlich so: double iRVI(symbol,timeframe,period,mode,shift); und genauso geht das bei der Funktion iCCI. In der mql-Referenz ist auch genau festgelgt, an welcher Stelle welche Variable stehen muss !! |
@MA-EA
Die Zeilen double IL1 und double IL2 mußt du ersetzen Mit z.B.: Code:
bool IL1 () Die Levels sind nicht Bestandteil der Rückgabe iCCI(...) iCCI gibt nur den Datentyp double auf Grundlage der von dir übergebenen Variblen zurück. Bei einer Period die in der Zukunft liegt (Periodenwerte < 0) ist es nichts. Das selbe wirst du mit iRVI haben deshalb ist es wichtig zu verstehen was hier passiert. |
Alle Zeitangaben in WEZ +2. Es ist jetzt 02:32 Uhr. |
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum