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: 3658
Beiträge: 36009
Benutzer: 5.794
Aktive Benutzer: 593
Links: 80
Wir begrüßen unseren neuesten Benutzer: swischen
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor 8 Stunden
- swischen
vor einem Tag
- binaryexpe...
vor einem Tag
- Thorsten30...
vor 5 Tagen
- DayTrader2...
vor 5 Tagen
- erfolgreic...

Onlineuser
'Wer ist online' anzeigen Benutzer: 1
Gäste: 49
Gesamt: 50
Team: 0
Team:  
Benutzer:  kvolstorf
Freunde anzeigen

Empfehlungen

Werbung

Like Tree5Likes
Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #211 (permalink)  
Alt 29.03.16
Mitglied
 
Registriert seit: Oct 2015
Ort: Karlshagen
Beiträge: 197
ralfbenker befindet sich auf einem aufstrebenden Ast
Standard

Haste schom mal versucht, den ADX einzusetzten ? Der zeigt doch direkt die Trendstärke. Ein Wert über 24-30 zeigt nen starken Trend an. Filtert Seitwärtsphasen zwar nicht aus dafür verringern sich die Fehlsignale. Hat bei mir meist was gebracht.
z.B. so

if ((iADX(NULL,0,14,PRICE_HIGH,MODE_MAIN,0)>24)
{
//zwischen den geschweiften Klammern steht dann der Code der ausgeführt werden soll
}
  #212 (permalink)  
Alt 29.03.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Edit:Ob ich mal prüfen lasse, ob die GDs ihre Abstände bei Kerze 1
und 2 zueinander vergrößert haben? So ne Art Durchschnitt der Durchschnitte?

Edit:Ich glaube, ich probiers einfach mal. Aber die letzten 2 oder 3 Kerzen?
  #213 (permalink)  
Alt 30.03.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Alles richtig?

Edit: Da ich mit negativen Zahlen irgendwann mal negative Erfahrungen gemacht habe, lass ich die Werte einfach addieren.
Code:
//GDs
//Bar 1
double B1_MA1 = iMA(Symbol(), TimeFrame, Moving_Average_1, GD_Shift, GD_Type, PRICE_CLOSE, 1);//3
double B1_MA2 = iMA(Symbol(), TimeFrame, Moving_Average_2, GD_Shift, GD_Type, PRICE_CLOSE, 1);//6
double B1_MA3 = iMA(Symbol(), TimeFrame, Moving_Average_3, GD_Shift, GD_Type, PRICE_CLOSE, 1);//12

//Bar 2
double B2_MA1 = iMA(Symbol(), TimeFrame, Moving_Average_1, GD_Shift, GD_Type, PRICE_CLOSE, 2);//3
double B2_MA2 = iMA(Symbol(), TimeFrame, Moving_Average_2, GD_Shift, GD_Type, PRICE_CLOSE, 2);//6
double B2_MA3 = iMA(Symbol(), TimeFrame, Moving_Average_3, GD_Shift, GD_Type, PRICE_CLOSE, 2);//12

//Bar 3 erst mal nicht vergleichen
//double B3_MA1 = iMA(Symbol(), TimeFrame, Moving_Average_1, GD_Shift, GD_Type, PRICE_CLOSE, 3);//3
//double B3_MA2 = iMA(Symbol(), TimeFrame, Moving_Average_2, GD_Shift, GD_Type, PRICE_CLOSE, 3);//6
//double B3_MA3 = iMA(Symbol(), TimeFrame, Moving_Average_3, GD_Shift, GD_Type, PRICE_CLOSE, 3);//12
//--------------------------------------------------------------------------------------------------------------

//Berechnung GD-Distanzen
//Bar 1
double B1MA12 = B1_MA1 + B1_MA2;//MA1(3) und MA2(6)
double B1MA23 = B1_MA2 + B1_MA3;//MA2(6) und MA3(12)

//Bar 2
double B2MA12 = B2_MA1 + B2_MA2;//SMA1(3) und MA2(6)
double B2MA23 = B2_MA2 + B2_MA3;//MA2(6) und MA3(12)

//Bar 3 erst mal nicht vergleichen
//double DB3_MA1_2 = B2_MA1 + B2_MA2;//MA1(3) und MA2(6)
//double DB3_MA2_3 = B2_MA2 + B2_MA3;//MA2(6) und MA3(12)
  #214 (permalink)  
Alt 30.03.16
Premium Mitglied
 
Registriert seit: Apr 2015
Beiträge: 369
Raul0 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
//double DB3_MA1_2 = B2_MA1 + B2_MA2;//MA1(3) und MA2(6)
//double DB3_MA2_3 = B2_MA2 + B2_MA3;//MA2(6) und MA3(12)
Musste beachten, wenns später ent-kommentiert wird, statt B2 eine B3. Sonst alles ok für meine Augen.
__________________

Tradertool
  #215 (permalink)  
Alt 30.03.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Werd wahrscheinlich nur Bar 1 und 2 vergleichen. Müsste eigentlich reichen.

Ich würde vielleicht die Lotsize vom EA automatisch berechnen lassen. Weiß aber nicht so recht wie.

Z.B.:
Globale Variablen:
extern bool auto RM_MM = true;
extern string RM_MM = "true=Yes false=No
extern double Use_%_of_Gesamtkapital = 1.0;
  #216 (permalink)  
Alt 31.03.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Hallo.

Wie man sehn kann, probiere ich gerade mit 4 GDs rum.

Die blaue (6) und orange (3) Kurven sind die eigentlichen Signalgeber. Die gestrichelte rote (6) und die gestrichelte weiße (3) dienen als eine Art Bestätigung und zum Vola-Vergleich von 2 Kerzen. Sieht soweit ganz schick aus. Ich frag mich allerdings, ob ich die gestrichelten (auch) für den Ausstieg benutzen sollte oder ob ich das einfach weiterhin blau und orange überlasse.

Ich finde eigentlich, dass 3 und 6 geht. Oder gibts bessere Vorschläge?

  #217 (permalink)  
Alt 31.03.16
Mitglied
 
Registriert seit: Oct 2015
Ort: Karlshagen
Beiträge: 197
ralfbenker befindet sich auf einem aufstrebenden Ast
Standard

Guck Dir mal die Strategien für's Rainbow Trading an. Da wirst Du bestimmt fündig. Die arbeiten mit noch viel mehr Durchschnitten, sieht optisch wie ein Regenbogen aus.
  #218 (permalink)  
Alt 31.03.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Danke, aber 6 Stück sind erst mal genug.

Code:
if (TC>F && TC<T && S<=MS && B10_D_FM>=B11_D_FM && B10_D_MS>=B11_D_MS && LC!=B2_FMA && B2_FMA>B2_MMA && B2_MMA>B2_SMA && B10_VF>B10_VM && B10_VM>B10_VS && B11_VF>B11_VM && B11_VM>B11_VS) OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, 0, 0, Name + " Buy(#" + MagicNumber + ")", MagicNumber, 0, Blue);
if (TC>F && TC<T && S<=MS && B10_D_FM>=B11_D_FM && B10_D_MS>=B11_D_MS && LC!=B2_FMA && B2_FMA<B2_MMA && B2_MMA<B2_SMA && B10_VF<B10_VM && B10_VM<B10_VS && B11_VF<B11_VM && B11_VM<B11_VS) OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, 0, 0, Name + " Sell(#" + MagicNumber + ")", MagicNumber, 0, Red);}
  #219 (permalink)  
Alt 01.04.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Hallo.

Hab ein komplexes System aus 6 GDs gebastelt. Wenn ich es starte, macht er keine Order auf.

Ich glaube, das ein Problem ist, dass er den Last Close Bar 1 nicht mit
dem GD Bar 5 vergleichen kann. Das wär nicht weiter schlimm, man müsste den LC lediglich auch auf Bar 5 einstellen.

Es werden ja auch die Abstände der GDs Bar 6 mit Bar 7 verglichen. Damit soll geprüft werden, ob die Vola zu genommen hat oder zumindest gleich geblieben ist. Ist das vielleicht das Problem?

Oder müssen für jede Bar extra GDs eingerichtet und deklariert werden?

Möglich muss das ganze aber sein, der Ichimoku besteht ja auch aus nem Haufen verschobener GDs.

Code:
//Kurse, GDs
double C5 = iClose(Symbol(), TimeFrame, 5);//Close Bar 5 probieren

//GDs Bar 5 Signale
double B5_FMA = iMA(Symbol(), TimeFrame, Fast_MA, GD_Shift, GD_Type, PRICE_CLOSE, 5);//3
double B5_MMA = iMA(Symbol(), TimeFrame, Middle_MA, GD_Shift, GD_Type, PRICE_CLOSE, 5);//6
double B5_SMA = iMA(Symbol(), TimeFrame, Slow_MA, GD_Shift, GD_Type, PRICE_CLOSE, 5);//12

//GDs Bar 6 Vola
double B6_VF = iMA(Symbol(), TimeFrame, Vola_Fast_MA, GD_Shift, GD_Type, PRICE_CLOSE, 6);//3
double B6_VM = iMA(Symbol(), TimeFrame, Vola_Middle_MA, GD_Shift, GD_Type, PRICE_CLOSE, 6);//6
double B6_VS = iMA(Symbol(), TimeFrame, Vola_Middle_MA, GD_Shift, GD_Type, PRICE_CLOSE, 6);//12

//GDs Bar 7 Vola
double B7_VF = iMA(Symbol(), TimeFrame, Vola_Fast_MA, GD_Shift, GD_Type, PRICE_CLOSE, 7);//3
double B7_VM = iMA(Symbol(), TimeFrame, Vola_Middle_MA, GD_Shift, GD_Type, PRICE_CLOSE, 7);//6
double B7_VS = iMA(Symbol(), TimeFrame, Vola_Slow_MA, GD_Shift, GD_Type, PRICE_CLOSE, 7);//12
//--------------------------------------------------------------------------------------------------------------

//Berechnung GD-Distanzen
//Bar 6
double B6_D_FM = B6_VF + B6_VM;//Fast Middle Bar 6
double B6_D_MS = B6_VM + B6_VS;//Middle Slow Bar 5

//Bar 7
double B7_D_FM = B7_VF + B7_VM;//Fast Middle Bar 7
double B7_D_MS = B7_VM + B7_VS;//Middle Slow Bar 7
//-------------------------------------------------------------------------------------------------------------

//Check position
IsInvested = false;
for (i=OrdersTotal()-1; i>=0; i--) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if((OrderType()==OP_SELL || OrderType()==OP_BUY) && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()) IsInvested=true;}}
//-------------------------------------------------------------------------------------------------------------

//Open Trade
if (!IsInvested){
if (TC>F && TC<T && S<=MS && LC!=B5_FMA && B6_D_FM>=B7_D_FM && B6_D_MS>=B7_D_MS && B5_FMA>B5_MMA && B5_MMA>B5_SMA && B6_VF>B6_VM && B6_VM>B6_VS && B7_VF>B7_VM && B7_VM>B7_VS) OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, 0, 0, Name + " Buy(#" + MagicNumber + ")", MagicNumber, 0, Blue);
if (TC>F && TC<T && S<=MS && LC!=B5_FMA && B6_D_FM>=B7_D_FM && B6_D_MS>=B7_D_MS && B5_FMA<B5_MMA && B5_MMA<B5_SMA && B6_VF<B6_VM && B6_VM<B6_VS && B7_VF<B7_VM && B7_VM<B7_VS) OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, 0, 0, Name + " Sell(#" + MagicNumber + ")", MagicNumber, 0, Red);}
//-------------------------------------------------------------------------------------------------------------

//Close Trade
if (IsInvested){
for (i=OrdersTotal()-1; i>=0; i--){
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)){

if (OrderType()==OP_BUY && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()){
if((LC!=B5_FMA && B6_VF<B6_VM && B6_VM<B6_VS) || (CAA=true && TC>CA)) OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, DarkBlue);}

if (OrderType()==OP_SELL && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()){
if((LC!=B5_FMA && B6_VF>B6_VM && B6_VM>B6_VS) || (CAA=true && TC>CA)) OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, FireBrick);}}}}
  #220 (permalink)  
Alt 01.04.16
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 561
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Hab aus den 6 GDs 9 gemacht und jetzt funktionierts.
Thema geschlossen

Lesezeichen

Stichworte
expert advisor, gleitender durchschnitt, mql4, programmierung, programmierung metatrader, programmierung mql4, trading


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:52 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.
-----------------------------------------------------------------------------------------------------------------------------