Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Programmierung MQL4 (http://www.expert-advisor.com/forum/forumdisplay.php?f=220)
-   -   Neuer Valerius Metatrader 4 EA (http://www.expert-advisor.com/forum/showthread.php?t=5159)

traderdoc 14.12.16 23:00

Die Lösung steht zum wiederholten Mal in Post #74!!

Es gibt dazu nichts mehr zu schreiben. Und wenn Dein Buch da was anderes schreibt, dann kannst Du Dir damit maximal zu Weihnachten ein Feuer im Kamin entfachen.

traderdoc

SusanneH 14.12.16 23:08

Richtischhhhhhhh
 
Zitat:

Zitat von traderdoc (Beitrag 36866)
Die Lösung steht zum wiederholten Mal in Post #74!!

Es gibt dazu nichts mehr zu schreiben. Und wenn Dein Buch da was anderes schreibt, dann kannst Du Dir damit maximal zu Weihnachten ein Feuer im Kamin entfachen.

traderdoc

Daumen hoch ;)

MA-EA 15.12.16 00:26

Zitat:

Zitat von traderdoc (Beitrag 36117)
D.h. dort kommt genau diese Variable rein - InpCCIPeriod
Und da diese Zeile bereits existiert:

double CCI_B1 = iCCI(_Symbol,_Period, InpCCIPeriod, CCI_Price, 1);

braucht nun nur noch der Vergleich mit den Linien 100 und -100 geschrieben werden:
extern double indicator_level1 = -100;
extern double indicator_level2 = 100;

if (CCI_B1 > indicator_level2) //Buy
if (CCI_B1 < indicator_level1) //Sell

Danke, das ist inzwischen klar. :rolleyes: Aber ich würde gerne die Levels einstellbar machen. Und irgendwie müssen die doch auch eingestellt werden können müssen? Mann kann ja nicht jedes Mal die CCI MQL öffnen.

Jedenfalls kapier ich wirklich nicht, was hier jetzt noch falsch ist: :mad: :confused:
Code:

//CCI
{//Buy/Sell when CCI >/< IL2/IL1
double CCI_IL1 = iCCI(_Symbol,TimeFrame,_Period,InpCCIPeriod,CCI_Price,mode_indicator_level1, 1);//-100

"'mode_indicator_level1' - undeclared identifier Valerius_CCI_Metatrader4_EA.mq4 78 72"


Code:

double CCI_IL2 = iCCI(_Symbol,TimeFrame,_Period,InpCCIPeriod,CCI_Price,mode_indicator_level2, 1);//+100}
"'mode_indicator_level2' - undeclared identifier Valerius_CCI_Metatrader4_EA.mq4 79 72"

Und bei beiden Zeilen heißt es
"'iCCI' - wrong parameters count Valerius_CCI_Metatrader4_EA.mq4 78 18"

Hier noch mal der Sch..., den man in der CCI MQL einstellen, auswählen, was auch immer kann.
Code:

#property indicator_separate_window
#property indicator_buffers    1
#property indicator_color1    LightSeaGreen
#property indicator_level1    -100.0
#property indicator_level2    100.0
#property indicator_levelcolor clrSilver
#property indicator_levelstyle STYLE_DOT
//--- input parameter
input int InpCCIPeriod=14;//CCI Period

Und die 3 Buffer des CCI:
Code:

//--- buffers
double ExtCCIBuffer[];
double ExtPriceBuffer[];
double ExtMovBuffer[];

Im neuen Buch steht nur "int mode;" und z.B. beim Alligator:
"int mode: Der Indikator besteht aus 3 Linien, Kiefer, Zähne und Lippen. Über den Parameter mode wird eine der jeweiligen Linien selektiert:"...

Natürlich steht da nix über "mode" für den CCI. :eek:

Wenn ich drüber schreibe
Code:

int mode;
ändert das gar nix.

MA-EA 15.12.16 01:19

Ohne Dekla der Levels scheints zu funktionieren. :confused:
https://charts.mql5.com/13/473/audnz...kers-ltd-2.png

Wir sehn uns dann vermutlich demnächst, wenn ich verzweifelt versuche, den RVI einzubaun. :D

traderdoc 15.12.16 09:32

Oi, oi, oi, Du bist aber wirklich ein schwerer Fall.

Ich kopiere nun nochmals aus der MQL4-Dokumentation:

double iCCI(
string symbol, // symbol
int timeframe, // timeframe
int period, // averaging period
int applied_price, // applied price
int shift // shift
);

Siehst Du da irgendein Level? Ich nicht!

//CCI
{//Buy/Sell when CCI >/< IL2/IL1
double CCI_IL1 = iCCI(_Symbol,TimeFrame,_Period,InpCCIPeriod,CCI_Pr ice,mode_indicator_level1, 1);//-100

Was soll hier TimeFrame und _Period???

In der o.g. Deklaration sind exakt 5 Parameter zu übergeben und nicht ein einziger mehr. Wie kommst Du also auf die Idee dieser Funktion 7 Parameter zu übergeben? Was soll denn dieser Quatsch und das schon seit Monaten!
Kannst Du nicht oder willst Du nicht, ich kapiere das nicht.
Geh doch einfach nach der o.g. Deklaration vor und basta!
Und benutze die Infos aus dem Post #74 und schmeiße endlich diese Bücher weg, wenn es denn so falsch da drin stehen sollte.

Also nochmal, in die Indikatorfunktion kommt keine Level-Variable rein! Ist das jetzt endlich klar?

traderdoc

Kronenchakra 15.12.16 12:03

Lernresistenz
 
Also dieser Fred ist ja die Lachnummer par excellance :D
@traderdoc: Daß du dafür deine Zeit vergeudest ist bewundernswert!

traderdoc 15.12.16 12:57

Ja, ich glaube nach wie vor am Guten im Menschen und damit u.a. die Lernfähigkeit, aber die scheint bei ihm in der Tat sehr mickrig zu sein.

Ich kann nur schwer mein Helfersydrom ausschalten, muss mich wohl aber hier selber an die Zügel nehmen.
Ich schreibe das alles so zwischen durch in meiner Haupttätigkeit. Da gibt es immer mal die eine oder andere Lücke.

traderdoc

MA-EA 15.12.16 17:23

Liste der Anhänge anzeigen (Anzahl: 1)
Will ja nicht meckern, aber ein "CCI Levels brauchen nicht extra deklariert werden" hätte gereicht. ;) :rolleyes: Für nen Neuling ist das irgendwie Alles ganz schön verwirrend. :confused:

Wie auch immer, jetzt soll der RVI rein. Für den EA relevant dürfte eigentlich nur folgendes sein:
Code:

extern int ExtRVIPeriod=10;
Code:

//---- indicator buffers
double    ExtRVIBuffer[];
double    ExtRVISignalBuffer[];

Wenn RVIBuffer >/< RVISignalBuffer soll geöffnet werden. Wenn das Gegenteil der Fall ist, soll geschlossen, bzw. nen Trade in die andere Richtung geöffnet werden, je nach Situation halt. (CCI soll nur bestätigen)

Also wenn ich das richtig sehe, müssen die beiden Buffer jeweils gleich vor Shift mit "mode" deklariert werden? Ansonsten _Symbol,_Period,usw..., quasi das selbe wie beim CCI, nur natürlich auf den Bestandteilen des RVI basierend? :confused:

Kronenchakra 15.12.16 20:23

in MQL5 geht das so:
Code:

int RVIhandle=iRVI(_Symbol,PERIOD_CURRENT,MA_Period);
in MQL4 ist das ähnlich. Brauchst ja nur iRVI eingeben und F1 drücken.

Warum verwendest du nicht den MT5 ? Der MT4 ist im aussterben. Metaquotes leitet angeblich bei der Installation von MT4 auf MT5 um.
Wenn du schon was lernst, sollte es doch längere Zeit Bestand haben, und auch das bessere Produkt sein.

Da werden wahrscheinlich einige aufheulen und das Gegenteil behaupten, die haben sich wahrscheinlich noch nicht ernsthaft mit MQL5 beschäftigt.
Natürlich ist es aufwändig wieder umzulernen, aber es zahlt sich aus und es gibt Codebeispiele wie Sand am Meer.

Grüße Otto

traderdoc 15.12.16 20:36

Zitat:

Zitat von MA-EA (Beitrag 36873)
Will ja nicht meckern, aber ein "CCI Levels brauchen nicht extra deklariert werden" hätte gereicht. ;) :rolleyes: Für nen Neuling ist das irgendwie Alles ganz schön verwirrend. :confused:

Ne, Du hast auch nicht zu meckern. Wenn, dann nur diejenigen, die Dir seit Monaten versuchen beizubringen, wie die Funktion iCCI() richtig angewendet wird. Und wenn Du einfach nur das machen würdest, was wir Dir geschrieben haben, endlich Deine Bücher beiseite legst und die MQL-Dokumentation zur Hand nimmst, dann wärst Du jetzt bereits viel weiter, und wir hätten uns viel Zeit und Nerven gespart.

traderdoc


Alle Zeitangaben in WEZ +2. Es ist jetzt 02:47 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