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: 3358
Beiträge: 33842
Benutzer: 5.338
Aktive Benutzer: 598
Links: 79
Wir begrüßen unseren neuesten Benutzer: Adlerflügel
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor 9 Stunden
- Adlerflüge...
vor einem Tag
- just4fun
vor einem Tag
- stalefish
vor 2 Tagen
- hhh45
vor 2 Tagen
- Peter

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 34
Gesamt: 34
Team: 0
Team:  
Benutzer:  
Freunde anzeigen

Empfehlungen

Werbung

Like Tree5Likes
Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #241 (permalink)  
Alt 08.08.16
Premium Mitglied
 
Registriert seit: Sep 2015
Beiträge: 407
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Hallo.

Hätte gerne eine Art SL im EA. Allerdings keinen normalen SL in Pips.
Sondern einen der aussteigt wenn bei z.B. einem Buy

-Der Close (Bar 1) kleiner als der schnellste GD ist

und

-Der Wert (in Euro) der Position im minus ist

Bei nem Sell das Ganze natürlich entgegen gesetzt. Bis jetzt schauts so aus:

Code:
//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((CP<F_MA && F_MA<M_MA) || (CAA=true && TC>CA)) OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, DarkBlue);}

if (OrderType()==OP_SELL && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()){
if((CP>F_MA && F_MA>M_MA) || (CAA=true && TC>CA)) OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, FireBrick);}}}}
Edit:ich werd dann wahrscheinlich noch nen CCI oder so einbauen. Aber erst mal muss der Notfall-Ausstieg geprobt werden.
Mit Zitat antworten
  #242 (permalink)  
Alt 09.08.16
Premium Mitglied
 
Registriert seit: Sep 2015
Beiträge: 407
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Korrekt so?

Code:
//Sicherheitsausstieg
extern bool Close_loss_Trades_fast = true;
extern string Close_loss = "true=Yes/false=No";
Code:
//Sicherheits-Close
bool CLTF = (Close_loss_Trades_fast);
double OP = OrderProfit();
Code:
if (OrderType()==OP_BUY && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()){
if((CP<F_MA && F_MA<M_MA) || (CAA=true && TC>CA) || (CLTF=true && CP<F_MA && OP<0.0)) OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, DarkBlue);}

if (OrderType()==OP_SELL && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()){
if((CP>F_MA && F_MA>M_MA) || (CAA=true && TC>CA) || (CLTF=true && CP>F_MA && OP<0.0)) OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, FireBrick);}}}}
Mit Zitat antworten
  #243 (permalink)  
Alt 21.08.16
Premium Mitglied
 
Registriert seit: Sep 2015
Beiträge: 407
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Aloha.

Versuch schon seit einiger Zeit zu vermeiden, dass er in Trends einsteigt, die schon zu Ende sind. Kommt immer wieder vor, dass der Kurs schon ne andere Richtung einschlägt, laut Bar1 die Bedingungen für die alte Richtung aber noch gegeben sind.

Bisher hab ich ihn prüfen lassen, ob auch bei Bar0 der Kurs noch über den GDs ist. Bzw. ob die GDs Bar0 noch so sind wie bei Bar1. Allerdings dürfte das wohl nicht optimal sein, weils ja hin und her gehen kann.

Wärs vielleicht besser, wenn geprüft wird, ob Close Bar0 auch über dem schnellsten GD Bar1 ist? Entsprechend entgegensetzt bei Sells.

Weiß es alles nicht so richtig.

Einfache GDs mit 3, 6, 10 im H1 scheinen einigermaßen zu funktionieren.
Mit Zitat antworten
  #244 (permalink)  
Alt 23.08.16
Premium Mitglied
 
Registriert seit: Sep 2015
Beiträge: 407
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Hallo.

Ich will was versuchen, um Verluste wesentlich kleiner zu halten. Er soll einfach in beide Richtungen ne Order öffnen, 1x Buy, 1x Sell. Die, die zuerst im minus und bei der der Close Bar1 über/unter dem schnellsten GD (F_MA1) ist, soll geschlossen werden. Ansonsten wird aus- und eingestiegen (Einstieg wie gesagt Long und Short gleichzeitig) wie zuvor.

Also wenn z.B. nen Long Signal kommt:

einen Buy und einen Sell öffnen wenn
-Close Bar0 & Close Bar1 > F_MA > M_MA > S_MA

Jetzt mal angenommen das Long-Signal war nen Fehlsignal und es geht stattdessen nach unten:

Long/Buy schließen wenn
-Close Bar1 < F_MA & Order_Profit < 0.0

Code:
//Kurse
double CP0 = iClose(Symbol(), TimeFrame, 0);
double CP1 = iClose(Symbol(), TimeFrame, 1);

//GDs
double F_MA = iMA(Symbol(), TimeFrame, Fast_Moving_Average, GD_Shift, GD_Type, PRICE_CLOSE, 1);
double M_MA = iMA(Symbol(), TimeFrame, Middle_Moving_Average, GD_Shift, GD_Type, PRICE_CLOSE, 1);
double S_MA = iMA(Symbol(), TimeFrame, Slow_Moving_Average, GD_Shift, GD_Type, PRICE_CLOSE, 1);
//--------------------------------------------------------------------------------------------------------------

//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 && CP0>F_MA && CP1>F_MA && F_MA>M_MA && M_MA>S_MA) OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, 0, 0, Name + " Buy(#" + MagicNumber + ")", MagicNumber, 0, Blue);
if (TC>F && TC<T && S<=MS && CP0<F_MA && CP1<F_MA && F_MA<M_MA && M_MA<S_MA) 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((CP1<F_MA && F_MA<M_MA) || (CAA=true && TC>CA) || (CLTF=true && CP1<F_MA && O_P<0.0)) OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, DarkBlue);}

if (OrderType()==OP_SELL && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()){
if((CP1>F_MA && F_MA>M_MA) || (CAA=true && TC>CA) || (CLTF=true && CP1>F_MA && O_P<0.0)) OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, FireBrick);}}}}
Hoffe, ich hab verständlich erklärt, was ich gerne hätte. :wonder:
Mit Zitat antworten
  #245 (permalink)  
Alt 24.08.16
Premium Mitglied
 
Registriert seit: Sep 2015
Beiträge: 407
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Allerdings gibts ja ein logisches Problem: Dass, wenn die Verlustposi geschlossen wurde, er gleich ne Neue in die selbe Richtung aufmachen würde. Also müsste er nur ne Order abgeben, wenn beim jeweiligen WP gerade gar keine offen ist (und die sonstigen Bedingungen natürlich auch erfüllt sind).
Mit Zitat antworten
  #246 (permalink)  
Alt 28.08.16
Premium Mitglied
 
Registriert seit: Sep 2015
Beiträge: 407
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Hallo.

Eine stark veränderte Version. In meinem Strategietester gibts immer nur Fehlermeldungen. Wenns nix ausmacht...
Angehängte Dateien
Dateityp: ex4 Valerius_3MA_CCI_B0B1_CLTF_EA_Metatrader4.ex4 (15,9 KB, 3x aufgerufen)
Mit Zitat antworten
  #247 (permalink)  
Alt 03.09.16
Neues Mitglied
 
Registriert seit: Sep 2016
Beiträge: 4
tonyohne13 befindet sich auf einem aufstrebenden Ast
Red face war mein traum..........

Zitat:
Zitat von MA-EA Beitrag anzeigen
Hallo.

Ich will was versuchen, um Verluste wesentlich kleiner zu halten. Er soll einfach in beide Richtungen ne Order öffnen, 1x Buy, 1x Sell. Die, die zuerst im minus und bei der der Close Bar1 über/unter dem schnellsten GD (F_MA1) ist, soll geschlossen werden. Ansonsten wird aus- und eingestiegen (Einstieg wie gesagt Long und Short gleichzeitig) wie zuvor.

Also wenn z.B. nen Long Signal kommt:

einen Buy und einen Sell öffnen wenn
-Close Bar0 & Close Bar1 > F_MA > M_MA > S_MA

Jetzt mal angenommen das Long-Signal war nen Fehlsignal und es geht stattdessen nach unten:

Long/Buy schließen wenn
-Close Bar1 < F_MA & Order_Profit < 0.0

Code:
//Kurse
double CP0 = iClose(Symbol(), TimeFrame, 0);
double CP1 = iClose(Symbol(), TimeFrame, 1);

//GDs
double F_MA = iMA(Symbol(), TimeFrame, Fast_Moving_Average, GD_Shift, GD_Type, PRICE_CLOSE, 1);
double M_MA = iMA(Symbol(), TimeFrame, Middle_Moving_Average, GD_Shift, GD_Type, PRICE_CLOSE, 1);
double S_MA = iMA(Symbol(), TimeFrame, Slow_Moving_Average, GD_Shift, GD_Type, PRICE_CLOSE, 1);
//--------------------------------------------------------------------------------------------------------------

//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 && CP0>F_MA && CP1>F_MA && F_MA>M_MA && M_MA>S_MA) OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, 0, 0, Name + " Buy(#" + MagicNumber + ")", MagicNumber, 0, Blue);
if (TC>F && TC<T && S<=MS && CP0<F_MA && CP1<F_MA && F_MA<M_MA && M_MA<S_MA) 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((CP1<F_MA && F_MA<M_MA) || (CAA=true && TC>CA) || (CLTF=true && CP1<F_MA && O_P<0.0)) OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, DarkBlue);}

if (OrderType()==OP_SELL && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()){
if((CP1>F_MA && F_MA>M_MA) || (CAA=true && TC>CA) || (CLTF=true && CP1>F_MA && O_P<0.0)) OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, FireBrick);}}}}
Hoffe, ich hab verständlich erklärt, was ich gerne hätte. :wonder:
bin Neu hier......,
haloo , versuche deine ratschläge ,zu verfolgen.......zurückblickend.......
und sehe ,dass du enorm viel wissen,mut,zeit (kapital ? ) investierst in diesem Ganzen...........
Vor vielen Jahren hatte ich auch von dem GETRÄUMT(vollautomatisches Handeln.., damals gab's auch schon solche mutige wie du....., die sich auch mit solchen codes und Buchstaben auskennen...wie oben........
Heute träume ich immer noch davon....., aber ich lesen gerade von deinen..und anderen.....Berichte....., dass es extrem schwierig ist das RICHTIGE zu finden.......eben eine Geldmaschine...., die mit wenigen klicks einfach das Tut , wofür wir es einsetzen............
Trotzdem meine Frage....gibt's jemand auf dem man sich verlassen kann.., der sowas ( EA ) in meinem Meta trader system ( MQ4 ) installieren würde..?
Mit Zitat antworten
  #248 (permalink)  
Alt 03.09.16
Neues Mitglied
 
Registriert seit: Sep 2016
Beiträge: 4
tonyohne13 befindet sich auf einem aufstrebenden Ast
Standard verluste seit jahren.....

Zitat:
Zitat von MA-EA Beitrag anzeigen
Aloha.

Versuch schon seit einiger Zeit zu vermeiden, dass er in Trends einsteigt, die schon zu Ende sind. Kommt immer wieder vor, dass der Kurs schon ne andere Richtung einschlägt, laut Bar1 die Bedingungen für die alte Richtung aber noch gegeben sind.

Bisher hab ich ihn prüfen lassen, ob auch bei Bar0 der Kurs noch über den GDs ist. Bzw. ob die GDs Bar0 noch so sind wie bei Bar1. Allerdings dürfte das wohl nicht optimal sein, weils ja hin und her gehen kann.

Wärs vielleicht besser, wenn geprüft wird, ob Close Bar0 auch über dem schnellsten GD Bar1 ist? Entsprechend entgegensetzt bei Sells.

Weiß es alles nicht so richtig.

Einfache GDs mit 3, 6, 10 im H1 scheinen einigermaßen zu funktionieren.
haloo
wie bereit's erwähnt ,versuche deine Berichte zu verfolgen.......,
dein Versuch in beide Richtungen einzusteigen..habe ich auch schon mehrfach versucht,jedoch ohne EA , einfach so mit der normalen Handelsplattform...,klar wie gesagt...., mein wunsch war es auch ......einfach die Richtige oder den Richtigen Roboter zu finden.....und loslassen......., um sich anderen Sachen zu konzentrieren.......,

NUN will ich es zum letzten MAL versuchen.......Kann mir da jemand helfen?
Ich würde auch z.B. irgendwo hinfahren...,installieren lassen...,ein Paar tage Testen und dann direkt aufs Handeln probieren ev.mit dem der das installieren würde....., gibt's sowas....?
Ganz klar, dass ich das honorieren werde,das ist kein thema...., bin mal überrascht......
Mit Zitat antworten
  #249 (permalink)  
Alt 04.09.16
Premium Mitglied
 
Registriert seit: Sep 2015
Beiträge: 407
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Für nen Auftrag machst Du besser nen extra Fred auf.

Erst mal muss man nen EA/Bot haben, der überhaupt Gewinne macht.
Und dann muss man ruhige Tage erwischen, an denen es möglichst keine gravierenden News geben wird. Ist jedenfalls meine Erfahrung nach ein paar Monaten live.
Mit Zitat antworten
  #250 (permalink)  
Alt 04.09.16
Premium Mitglied
 
Registriert seit: Sep 2015
Beiträge: 407
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Hallo.

Richtig so? (wie heißt es doch oft:Probieren geht über Studieren )

Code:
//open Long & Short
extern bool Open_long_and_Short = true;
Code:
//Open Long & Short Abkürzung
bool OLAS = (Open_long_and_Short);
Code:
//Open Trade
if (!IsInvested){
if (TC>F && TC<T && S<=MS && CP0>F_MA && CP1>F_MA && F_MA>M_MA && M_MA>S_MA) OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, 0, 0, Name + " Buy(#" + MagicNumber + ")", MagicNumber, 0, Blue);
if (OLAS=true && TC>F && TC<T && S<=MS && CP0>F_MA && CP1>F_MA && F_MA>M_MA && M_MA>S_MA) OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, 0, 0, Name + " Sell(#" + MagicNumber + ")", MagicNumber, 0, Red);

if (TC>F && TC<T && S<=MS && CP0<F_MA && CP1<F_MA && F_MA<M_MA && M_MA<S_MA) OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, 0, 0, Name + " Sell(#" + MagicNumber + ")", MagicNumber, 0, Red);
if (OLAS=true && TC>F && TC<T && S<=MS && CP0<F_MA && CP1<F_MA && F_MA<M_MA && M_MA<S_MA)  OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, 0, 0, Name + " Buy(#" + MagicNumber + ")", MagicNumber, 0, Blue);}
//-------------------------------------------------------------------------------------------------------------

//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((CP1<F_MA && F_MA<M_MA) || (CAA=true && TC>CA) || (CLTF=true && CP0<CP1 && O_P<0.0)) OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, DarkBlue);}

if (OrderType()==OP_SELL && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()){
if((CP1>F_MA && F_MA>M_MA) || (CAA=true && TC>CA) || (CLTF=true && CP0>CP1 && O_P<0.0)) OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, FireBrick);}}}}
//-------------------------------------------------------------------------------------------------------------

return(0);}
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
auftrag, biete, ea, expert advisor, gleitender durchschnitt, kleinanzeigen, suche


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 +1. Es ist jetzt 07:43 Uhr.



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