Einzelnen Beitrag anzeigen
  #9 (permalink)  
Alt 05.02.12
Mast83 Mast83 ist offline
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

//+------------------------------------------------------------------+
//| Der Stundentrader.mq4 |
//| Der Marc |
//| Es gibt gar keine Internetseite |
//+------------------------------------------------------------------+
#property copyright "Der Marc"
#property link "Es gibt gar keine Internetseite"

//Wichtige Variablen
extern double Minlot=0.01;
extern int Digits2Round=2;
extern int PercentOfFreeDepo=1;
extern int Slippage=5;
extern int MagicNumber =1;
extern int TradeHour3=3;
extern int TradeHour4=4;
extern int TradeHour7=7;
extern int TradeHour10=10;
extern int TradeHour17=17;
extern int TradeHour18=18;
extern int TradeHour20=20;
extern int TradeHour12=12;
extern int TradeHour23=23;
extern int StopLoss=40;

//Globale Variablen
int BuyTicket;
int SellTicket;
double UsePoint;
int UseSlippage;


//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
UsePoint = PipPoint(Symbol());
UseSlippage = GetSlippage(Symbol(), Slippage);
}

//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
double FreeDepo=NormalizeDouble(AccountBalance()-AccountMargin(),Digits2Round);
double Risk=NormalizeDouble((FreeDepo*PercentOfFreeDepo/100),Digits2Round);
double Lot=NormalizeDouble(Risk/(StopLoss/0.0001)*0.1,Digits2Round);
//===================== Lets determine lot size and risk ===================================
if ( Lot<Minlot )
{
Lot=Minlot;
}
Comment( "\n","Acceptable risk is ",PercentOfFreeDepo, "% = ",Risk," of the free money ",FreeDepo," in lots = ",Lot);
// Buy criteria
OrderSelect(SellTicket || BuyTicket, SELECT_BY_TICKET);
//Close Order
if(OrderCloseTime() == 0 && SellTicket > 0 || BuyTicket > 0)
{
double CloseLots = OrderLots();
double ClosePrice = Ask;
bool Closed = OrderClose(SellTicket ,CloseLots, ClosePrice, UseSlippage, Red);
}
double OpenPrice = Ask;
//BuyOrder
if ((TradeHour3==Hour())||(TradeHour4==Hour())||(Trad eHour7==Hour())||(TradeHour10==Hour())||(TradeHour 17==Hour())||(TradeHour18==Hour())||(TradeHour20== Hour())) //Signal Buy
{
int openbuy=OrderSend(Symbol(),OP_BUY,Lot,Ask,Slippage ,StopLoss,0,"time trader buy order ",MagicNumber,0,Blue);
}
SellTicket = 0;
BuyTicket = 0;
// Sell criteria
OrderSelect(BuyTicket || SellTicket, SELECT_BY_TICKET);
//Close Order
if(OrderCloseTime() == 0 && BuyTicket > 0 || BuyTicket > 0)
{
CloseLots = OrderLots();
ClosePrice = Bid;
Closed = OrderClose(BuyTicket, CloseLots, ClosePrice, UseSlippage, Red);
}
OpenPrice = Bid;
//SellOrder
if ((TradeHour12==Hour())||(TradeHour23==Hour())) //Signal Sell
{
int opensell=OrderSend(Symbol(),OP_SELL,Lot,Bid,Slippa ge,StopLoss,0,"time trader sell order ",MagicNumber,0,Green);
}
SellTicket = 0;
BuyTicket = 0;

//----
return(0);
}
//+------------------------------------------------------------------+
//Pip Point Function
double PipPoint (string Currency)
{
int CalcDigits = MarketInfo(Currency, MODE_DIGITS);
if(CalcDigits == 2 || CalcDigits == 3) double CalcPoint = 0.01;
else if(CalcDigits == 4 || CalcDigits == 5) CalcPoint = 0.0001;
return (CalcPoint);
}

//Get Slippage Function
int GetSlippage(string Currency, int SlippagePips)
{
int CalcDigits = MarketInfo(Currency, MODE_DIGITS);
if(CalcDigits == 2 || CalcDigits == 3) double CalcSlippage = SlippagePips;
else if(CalcDigits == 4 || CalcDigits == 5) CalcSlippage = SlippagePips * 10;
return (CalcSlippage);
}


So nun schaut es besser aus...
Übrigens...ich habe festegestellt, dass die offene Position direkt geschlossen wird und nicht erst nach der Stunde..nochmals vielen Dank für die Hilfe

VG und Danke Marc
__________________
Heute Weizen, Abends Corn morgen fangen wir an von vorn...