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.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4973
Beiträge: 43248
Benutzer: 7.219
Aktive Benutzer: 81
Links: 84
Wir begrüßen unseren neuesten Benutzer: Hopfen&Malz
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor einem Tag
- Hopfen&Mal...
vor 2 Tagen
- frankmicha...
vor einer Woche
- DFeck
vor einer Woche
- bb1107
vor 2 Wochen
- rg-trader

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

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 09.10.11
Elite Mitglied
 
Registriert seit: Aug 2011
Ort: NRW
Beiträge: 764
Mast83 befindet sich auf einem aufstrebenden Ast
Mast83 eine Nachricht über ICQ schicken Mast83 eine Nachricht über Skype™ schicken
Standard Tagestrader

HAllo Zusammen,

die Tage habe ich ein wenig mit den Daten aus MT gespielt und mir einfach mal was herunter geladen...Daily EUR/USD Daten im Zeitraum von 5 Jahren. Da habe ich festgestellt, dass in diesem Zeitraum der MIttwoch der beste Tradingtag war..gemessen am Open und Close (long Positions). Daraus wollte ich mir nun was zusammen bsateln...ein EA der um 0:00 kauft und23:59:59 verkauft...und das halt nur Mittwochs...
Nun habe ihch folgendes Zusammen gebaut, aber es scheint noch nicht so recht zu klappen. Vll hat jemand von euch eine Idee was falsch sein könnte?

extern double dLots=0.025;
extern int iStopLoss=250;
extern int iTakeProfit=250;
extern int iSlippage=30;
extern int iMaxTrades=1;
extern int iMagicNumber=28061983;
extern double MaximumRisk=0.02;
extern int DecreaseFactor=3;
extern double GMTOffset = 0;
extern bool Monday = true;
extern bool Tuesday = true;
extern bool Wednesday = true;
extern bool Thursday = true;
extern bool Friday = true;
int iTotalTrades;
int iOrderOpenStatus;
int iErrorNumber;

string strErrorMessage;

//+------------------------------------------------------------------+
//| Calculate optimal lot size |
//+------------------------------------------------------------------+
double LotsOptimized()
{
double lot=dLots;
int orders=HistoryTotal(); // history orders total
int losses=0; // number of losses orders without a break
//---- select lot size
lot=NormalizeDouble(AccountFreeMargin()*MaximumRis k/1000.0,1);
//---- calculate number of losses orders without a break
if(DecreaseFactor>0)
{
for(int i=orders-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==fals e) { Print("Error in history!"); break; }
if(OrderSymbol()!=Symbol() || OrderType()>OP_SELL) continue;
//----
if(OrderProfit()>0) break;
if(OrderProfit()<0) losses++;
}
if(losses>1) lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1);
}
//---- return lot size
if(lot<0.025) lot=0.025;
return(lot);
}
void WeekdayFilter()
{
double GMT_Hour;
int servertime = TimeCurrent();
int GMT_time = servertime - 3600.0 * GMTOffset;

if (((Monday && DayOfWeek() == 1) || (Tuesday && DayOfWeek() == 2) || (Wednesday && DayOfWeek() == 3) ||
(Thursday && DayOfWeek() == 4) || (Friday && DayOfWeek() == 5)
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
int res;
res=OrderSend(Symbol(),OP_BUY,LotsOptimized(),Open ,0,Bid-iStopLoss*Point,Bid+iTakeProfit*Point,"KAUF",iMagi cNumber,0,Blue);
return;
}


Vielen Dank für eure Hilfe
__________________
Heute Weizen, Abends Corn morgen fangen wir an von vorn...
  #2 (permalink)  
Alt 10.10.11
Gesperrter Benutzer
 
Registriert seit: Sep 2011
Ort: Kassel
Beiträge: 749
JoeDormann befindet sich auf einem aufstrebenden Ast
JoeDormann eine Nachricht über Skype™ schicken
Standard

Hallo,

hättest ja schreiben können was er macht. Dann wärest Du drauf gekommen, da der EA ja permanent kauft, das Du weder eine Funktion für den zeitlich korrekten Einkauf, noch für den Verkauf hast, bzw benutzt

Du mußt in start() den Tages und Zeitfilter für den Einkauf nutzen und davon abhängig ordersend() aufrufen.
Orderclose brauchst Du dann wenn eine Position offen ist um 23:59, um diese zu schliessen.

Gruß Joe
  #3 (permalink)  
Alt 10.10.11
Elite Mitglied
 
Registriert seit: Aug 2011
Ort: NRW
Beiträge: 764
Mast83 befindet sich auf einem aufstrebenden Ast
Mast83 eine Nachricht über ICQ schicken Mast83 eine Nachricht über Skype™ schicken
Standard

Also der EA soll nur kaufen und nicht verkaufen...wenn von 100 Trades 70 long sind, dann ist das Verhältnis kauf zu verkauf schon eindeutig ;-) Also soll der EA Mittwochs nur kaufen ;-)
__________________
Heute Weizen, Abends Corn morgen fangen wir an von vorn...
Thema geschlossen

Lesezeichen

Stichworte
mql4, programmierng expert advisor, programmierung ea, programmierung metatrader

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 18:40 Uhr.





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