Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.


Portalsuche


Werbung

Login
Benutzername:
Kennwort:


Statistik
Themen: 3533
Beiträge: 35216
Benutzer: 5.640
Aktive Benutzer: 668
Links: 80
Wir begrüßen unseren neuesten Benutzer: Trader12345
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor 10 Minuten
- Trader1234...
vor 6 Stunden
- saltwaterf...
vor 9 Stunden
- williet
vor einem Tag
- raifotrade
vor einem Tag
- EarlyBirdT...

Onlineuser
'Wer ist online' anzeigen Benutzer: 4
Gäste: 53
Gesamt: 57
Team: 0
Team:  
Benutzer:  Richertn, Stier, Trader12345, traderdoc
Freunde anzeigen

Empfehlungen

Werbung

Like Tree20Likes
Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #31 (permalink)  
Alt 13.09.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 535
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Wenn mein CCI so falsch ist, warum hat der EA dann heute im Demo
rund 30 € Gewinn gemacht? Obwohl tatsächlich die Ausstiegs-Bedingungen ungünstig geproggt waren.

Mit der Version im Anhang müsste es besser laufen.
Angehängte Dateien
Dateityp: mq4 Valerius_(CCI_FI)_Metatrader4_EA.mq4 (6,3 KB, 3x aufgerufen)
Mit Zitat antworten
  #32 (permalink)  
Alt 13.09.16
Mitglied
 
Registriert seit: Oct 2015
Ort: Karlshagen
Beiträge: 197
ralfbenker befindet sich auf einem aufstrebenden Ast
Wink

Nur weil der EA heute mal Gewinn gemacht hat muss die Einstiegsbedingung ja nicht unbedingt richtig programmiert sein.

Hast Du Dir mal die Werte von IL1_B1 oder IL1_B0 mit Print() anzeigen lassen.
Beide Variablen sind immer NULL !!!

somit musst Du in Zeile 123 nicht schreiben CCI_B1<IL1_B1
Sondern könntest auch schreiben CCI_B1< 0
Statt CCI_B0<IL1_B0 geht dann auch CCI_B0<0.

Dasselbe ist in Zeile 135 CCI_B1>IL1_B1 kannst Du ersetzen mit CCI_B1>0


Dein EA wird dasselbe Ergebnis liefern im Backtest aber nicht das tun was du denkst was er tut :-)
Hast Du eigentlich nen System nach dem Du die geschweiften Klammern setzt oder machst Du das nach Zufallsprinzip solange bis keine Fehlermeldungen erscheinen ?
Sorry, Du musst das Sprachkonzept lernen sonst wird das nie was.
traderdoc and SusanneH like this.
Mit Zitat antworten
  #33 (permalink)  
Alt 13.09.16
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 1.701
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von ralfbenker Beitrag anzeigen
Nur weil der EA heute mal Gewinn gemacht hat muss die Einstiegsbedingung ja nicht unbedingt richtig programmiert sein.

Hast Du Dir mal die Werte von IL1_B1 oder IL1_B0 mit Print() anzeigen lassen.
Beide Variablen sind immer NULL !!!

Hast Du eigentlich nen System nach dem Du die geschweiften Klammern setzt oder machst Du das nach Zufallsprinzip solange bis keine Fehlermeldungen erscheinen ?
Sorry, Du musst das Sprachkonzept lernen sonst wird das nie was.
Ja, davon rede ich schon die ganze Zeit!!
Aber der Junge ist einfach lernresistent.

traderdoc
ralfbenker likes this.
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
Mit Zitat antworten
  #34 (permalink)  
Alt 13.09.16
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 1.701
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Ach so, was ich noch dazu ergänzen wollte:

Das ist ne richtig logische Logik: "Der EA hat heute Gewinn gemacht, da muß er ja richtig programmiert sein".

Was es aber nicht auch alles gibt.

traderdoc
ralfbenker likes this.
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
Mit Zitat antworten
  #35 (permalink)  
Alt 13.09.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 535
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Kollegen...

Sorry, ich hab keinen Bock, jetzt noch mal Alles zu erklären.
Also macht einfach folgendes Experiment: Kompiliert den EA,
den ich heute zuletzt hoch geladen hab. Dann testet ihn mal mit
"Indicator Line"s 100 u. -100. Dann noch mal mit "Period" 1 und 1. Oder was Ihr Euch da gedacht habt.

Dann helft mir bitte mit dem Einbau des Relativ Vigor Index. Wenn
wir uns beim CCI nicht einig werden, kann zur Not der RVI dessen Job
übernehmen.

Viel Spaß und gute Nacht.
Mit Zitat antworten
  #36 (permalink)  
Alt 13.09.16
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 1.701
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MA-EA Beitrag anzeigen
Kollegen...

Sorry, ich hab keinen Bock, jetzt noch mal Alles zu erklären.
Also macht einfach folgendes Experiment: Kompiliert den EA,
den ich heute zuletzt hoch geladen hab. Dann testet ihn mal mit
"Indicator Line"s 100 u. -100. Dann noch mal mit "Period" 1 und 1. Oder was Ihr Euch da gedacht habt.

Dann helft mir bitte mit dem Einbau des Relativ Vigor Index. Wenn
wir uns beim CCI nicht einig werden, kann zur Not der RVI dessen Job
übernehmen.

Viel Spaß und gute Nacht.
Du brauchst es nicht zum 100. mal erklären. Damit wird es auch nicht besser.

Diese Zeile ist richtig, weil die dritte Variable eine Indikatorperiode ist!!!
double CCI_B0 = iCCI(_Symbol,_Period, InpCCIPeriod, CCI_Price, 0);

In dieser Zeile steht als Indikatorperiode eine -100. Erstens können Perioden nur positiv sein, ansonsten setzt der Compiler dafür eine 0 ein und damit ist das Ergebnis IL1_B0 immer!!!!!!!! 0.
double IL1_B0 = iCCI(_Symbol,_Period, indicator_level1, CCI_Price, 0);//-100

In dieser Zeile wird zwar für IL_2B0 ein Wert errechnet, weil die dritte Variable positiv ist, aber mit der Periode 100 soll da sicherlich nicht gerechnet werden, d.h. der errechnete Wert bezieht sich auf die letzten 100!!! Kerzen.
double IL2_B0 = iCCI(_Symbol,_Period, indicator_level2, CCI_Price, 0);//+100

So, also wenn Du nun immer noch nicht Deinen fatalen Denkfehler erkannt hast, dann kann Dir keiner mehr helfen. Und das hat nichts mit "nicht Bock haben" zu tun und auch nicht mit "nicht einig werden". Das hat was mit einer simplen, aber korrekten Programmierung zu tun.
Alles andere ist Murks, Ausprobiererei, Nonsens.

traderdoc
ralfbenker likes this.
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
Mit Zitat antworten
  #37 (permalink)  
Alt 14.09.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 535
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Ok, wisst Ihr was? Wir (bzw. Ihr) lassen den CCI einfach raus. Stattdessen
verwenden wir einfach den Relativ Vigor Index. Weiß aber nicht so
richtig, wie einbaun.
Angehängte Dateien
Dateityp: mq4 Valerius_(FI_RVI)_Metatrader4_EA.mq4 (5,5 KB, 1x aufgerufen)
Dateityp: mq4 RVI.mq4 (3,1 KB, 0x aufgerufen)
Mit Zitat antworten
  #38 (permalink)  
Alt 14.09.16
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 1.701
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Ich habe ja nun schon wirklich unzähligen Usern programmtechnisch geholfen, den richtigen Weg zu finden. So auch in Deinem Fall, nur mit dem Unterschied alle! anderen haben die Tips und Hinweise dankend angenommen, sofort umgesetzt und nicht vor lauter Trotz das Handtuch hingeschmissen.
Das ist definitiv der falsche Weg, weil Du so nicht weiter kommen wirst. Das, was hier passiert ist, wird symptomatisch weiterbestehen. Eingebaute Fehler, die nicht sofort sichtbar sind, wie der mit dem iCCI(), werden dann nicht erkannt und könnten sich ggf. sehr negativ auswirken.

traderdoc
ralfbenker likes this.
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
Mit Zitat antworten
  #39 (permalink)  
Alt 14.09.16
Mitglied
 
Registriert seit: Oct 2015
Ort: Karlshagen
Beiträge: 197
ralfbenker befindet sich auf einem aufstrebenden Ast
Standard

Kann ich nur bestätigen. Ob iCCI(), iRVI(), iRSI() oder wie die Indikatorfunktionen alle heißen- deren Verwendung ist immer gleich. Und wenn das mit iCCI zu kompliziert für dich ist wird das mit iRVI auch nicht besser.

Programmieren kann man lernen. Aber nur mit probieren ohne Verständnis wird das nichts.
Mit Zitat antworten
  #40 (permalink)  
Alt 14.09.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 535
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von ralfbenker Beitrag anzeigen
Falls Du dann doch mql4 Code schreiben solltest findest Du die Definition des iCCI in der Referenz:

double iCCI(
string symbol, // symbol
int timeframe, // timeframe
int period, // averaging period
int applied_price, // applied price
int shift // shift
);
Die Funktion iCCI benötigt genau diese 5 Parameter um ein Ergebnis zu liefern.
Oder an welcher Stelle meinst Du der Funktion iCCI mitzuteilen über wieviele Perioden sie berechnet werden soll?
Mit iCCI deklariest Du keine Linien sondern den Wert des iCCI im angegebenen Bar(shift).
Und ob der iCCI <>100/-100 ist prüfst Du dann mit einem Vergleich
iCCI()>100 oder iCCI<-100.
Shift funktioniert nicht. Darf ich fragen, wo Du die 5-Zeilen Liste
her hast? Ich jedenfalls hab in der Quelldatei nur diese
Parameter gefunden:
Code:
extern int InpCCIPeriod = 14;
extern double indicator_level1 = -100.0;
extern double indicator_level2 = 100.0;
input ENUM_APPLIED_PRICE CCI_Price = PRICE_TYPICAL;
Der Rest bezieht sich wohl auf diese MA-Quelldatei. S. Anhang.

Wenn ich das richtig verstehe, wird der CCI hier nicht als
Funktion benutzt, sondern nur abgefragt. Bin aber Voll-Noob.
Angehängte Dateien
Dateityp: mq4 CCI.mq4 (4,1 KB, 4x aufgerufen)
Dateityp: zip MovingAverages.zip (1,4 KB, 1x aufgerufen)
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
ea programmieren, expert advisor programmieren, mql4, programmierung, programmierung metatrader, valerius, valerius ea, valerius expert advisor


Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +2. Es ist jetzt 17:15 Uhr.



-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2017 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2017 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------