Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert sind; Die von diesem Forum gesetzten Cookies düfen nur auf dieser Website verwendet werden und stellen kein Sicherheitsrisiko dar. Cookies auf diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Broker zum Forex Scalpen und Hedgen mit Metatrader 4
#7
Notiz 

RE: Broker zum Forex Scalpen und Hedgen mit Metatrader 4

Danke für den Tip. Aber wie gesagt kann ich hier wirklich keine Fehler finden. Jedenfalls Keine, die dafür sorgen, dass das Teil mal sofort ne neue Order öffnet, wie es soll, und dann wieder teilweise ne halbe Stunde dafür braucht... Wer diesen Fehler findet, kann ihn mir wirklich mit größtem Vergnügen unter die Nase reiben... Sarcblink


Nachtrag: Ist es eigentlich nötig, bei OrderSelect() den OrderType() anzugeben? Da es für Buy und Sell jeweils ne extra MagicNumber gibt, müsste die für OrderSelect() doch eigentlich reichen. OrderType() müsste man doch eigentlich weg lassen können. Confused


//=============================================================================================================
// P R O P E R T Y
//============================================================================================================*/
// #property strict
// #property strict sorgt anscheinend dafür, dass Kommentare im Konfig-Fenster im MT4 sichtbar sind.

#property copyright"LoSh_AlwInv_Dist_V2.mq4"
#property copyright"daniel-rudloff@web.de"
//=============================================================================================================
// B E S C H R E I B U N G
//=============================================================================================================
extern string TOY="true = on / yes";
extern string FON="false = off / no";
//=============================================================================================================
// E I N S T E L L U N G E N
//=============================================================================================================

//-----------------------------------------------------------------------------------------------------------*/

extern string OPORTY="Open Order Types";
input bool open_Buy=true;
input bool open_Sel=true;

//-----------------------------------------------------------------------------------------------------------*/

extern string MN="Magic Numbers";
extern int MN_Buy=2;
extern int MN_Sel=4;

//-----------------------------------------------------------------------------------------------------------*/

extern string OOO1="Open Orders";
extern string OOO2="from/till";
extern string OOO3="(Server Time)";

extern int Open_From_Hour=7;
extern int Open_From_Min=0;

extern int Open_Till_Hour=17;
extern int Open_Till_Min=26;

//-----------------------------------------------------------------------------------------------------------*/

extern string CAOTOC1="Close all Orders after";
extern string CAOTOC2="(Server Time)";

extern bool Close_all_Orders_after=true;

extern int Close_after_Hour=17;
extern int Close_after_Min=27;

//-----------------------------------------------------------------------------------------------------------*/

extern int Slippage=99999999;

//-----------------------------------------------------------------------------------------------------------*/

extern double LotsBuy=0.01;
extern double LotsSel=0.01;

extern string esLPOCP1="Lots Buy/Lots Sell";
extern string esLPOCP2="+ LotsPlus";
extern string esLPOCP3="if Order close";
extern string esLPOCP4="with Profit";

extern double LotsPlus=0.01; //

//-----------------------------------------------------------------------------------------------------------*/

extern int SL=2000; // 2000 testen

//-----------------------------------------------------------------------------------------------------------*/

extern int TP=2400; // Zum Testen 2300

//-----------------------------------------------------------------------------------------------------------*/

extern string esIITCBSMS1="if IsTradeContexBusy()";
extern string esIITCBSMS2="sleep Milli Seconds";

extern int Sl_MS=25;

//-----------------------------------------------------------------------------------------------------------*/

extern string esDOPtAB1="Distance to";
extern string esDOPtAB2="Order Open Price";
extern string esDOPtAB3="close Win-Order";
extern string esDOPtAB4="If close with Profit";
extern string esDOPtAB5="Lots Buy + Lots Sel /";
extern string esDOPtAB6="Lots Sel + Lots Buy";

extern int Dist = 50; // Zum Testen 50. Weniger als 50 ist wahrscheinlich nicht ausreichend?

//-----------------------------------------------------------------------------------------------------------*/


//=============================================================================================================
// I N I T / D E I N I T
//=============================================================================================================
int init(){
  return(NULL);}
int deinit(){
  return(NULL);}
//=============================================================================================================
// E A  F U N K T I O N E N  S T A R T
//=============================================================================================================int
int start(){
//=============================================================================================================
// L O T S
//=============================================================================================================


double Min_L=MarketInfo(Symbol(),MODE_MINLOT);
double Max_L=MarketInfo(Symbol(),MODE_MAXLOT);

if(LotsBuy<Min_L)LotsBuy=Min_L;
if(LotsSel<Min_L)LotsSel=Min_L;

if(LotsBuy>=Max_L){
  LotsBuy=Max_L;
  LotsPlus=0.0;}

if(LotsSel>=Max_L){
  LotsSel=Max_L;
  LotsPlus=0.0;}


//=============================================================================================================
// S T O P  L O S S
//=============================================================================================================


//SL auf 0 stellen, wenn oben <1,
//um irgendwelche Missverständnisse zu vermeiden.
if(SL<1){
  double Buy_SL=0.0;
  double Sel_SL=0.0;}

  else{
    Buy_SL=NormalizeDouble(Ask-SL*_Point,_Digits);
    Sel_SL=NormalizeDouble(Bid+SL*_Point,_Digits);}

//SL genauso groß wie Minstoplevels machen, wenn er kleiner ist:
double MSL=MarketInfo(Symbol(),MODE_STOPLEVEL);
if(Buy_SL<MSL)Buy_SL=MSL;
if(Sel_SL<MSL)Sel_SL=MSL;


//=============================================================================================================
// T A K E  P R O F I T
//=============================================================================================================


//TP auf 0 stellen, wenn oben <1,
//um irgendwelche Missverständnisse zu vermeiden.
if(TP<1){
  double Buy_TP=0.0;
  double Sel_TP=0.0;}

  else{
    Buy_TP=NormalizeDouble(Ask+TP*_Point,_Digits);
    Sel_TP=NormalizeDouble(Bid-TP*_Point,_Digits);}


//=============================================================================================================
// C L O S E  D I S T A N C E  B E R E C H N U N G
//=============================================================================================================


double CLbuy_D = NormalizeDouble( Bid - Dist *_Point,_Digits);

double CLsel_D = NormalizeDouble( Ask + Dist *_Point,_Digits);


//=============================================================================================================
// O P E N  O R D E R S
//=============================================================================================================


if(Hour()>=Open_From_Hour&&Minute()>=Open_From_Min&&Hour()<=Open_Till_Hour&&Minute()<=Open_Till_Min){


//-----------------------------------------------------------------------------------------------------------*/


  if(open_Buy==true){

    bool LO=false;
    for(int i=OrdersTotal()-1;i>=0;i--){
      if(OrderSelect(i,SELECT_BY_POS)){
        if(OrderType()==OP_BUY&&OrderMagicNumber()==MN_Buy&&OrderSymbol()==Symbol())LO=true;}}

    if(LO==false&&IsTradeAllowed()==true)OrderSend(Symbol(),OP_BUY,LotsBuy,Ask,Slippage,Buy_SL,Buy_TP,NULL,MN_Buy,Blue);
    if(IsTradeContextBusy()==true)Sleep(Sl_MS);

}


//-----------------------------------------------------------------------------------------------------------*/


  if( open_Sel==true ){

    bool SH=false;
    for(int j=OrdersTotal()-1;j>=0;j--){
      if(OrderSelect(j,SELECT_BY_POS)){
        if(OrderType()==OP_SELL&&OrderMagicNumber()==MN_Sel&&OrderSymbol()==Symbol())SH=true;}}

    if(SH==false&&IsTradeAllowed()==true)OrderSend(Symbol(),OP_SELL,LotsSel,Bid,Slippage,Sel_SL,Sel_TP,NULL,MN_Sel,Blue);
    if(IsTradeContextBusy()==true)Sleep(Sl_MS);

}

//-----------------------------------------------------------------------------------------------------------*/

}


//=============================================================================================================
// C L O S E  O R D E R S
//=============================================================================================================


if(open_Buy==true){

  for(int k=OrdersTotal()-1;k>=0;k--){
    if(OrderSelect(k,SELECT_BY_POS)){
      if(OrderType()==OP_BUY&&OrderMagicNumber()==MN_Buy&&OrderSymbol()==Symbol()){

        if( ( CLbuy_D > OrderOpenPrice() ) ||(Close_all_Orders_after==true&&Hour()>=Close_after_Hour&&Minute()>=Close_after_Min) ){

          if(IsTradeAllowed()==true)OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,Red);

          if(IsTradeContextBusy()==true)Sleep(Sl_MS);

          LotsBuy = OrderLots() + LotsPlus;

          if( LotsBuy <= LotsSel )LotsBuy = LotsSel + LotsBuy;

} } } } }


//-----------------------------------------------------------------------------------------------------------*/


if(open_Sel==true){

  for(int l=OrdersTotal()-1;l>=0;l--){
    if(OrderSelect(l,SELECT_BY_POS)){
      if(OrderType()==OP_SELL&&OrderMagicNumber()==MN_Sel&&OrderSymbol()==Symbol()){
     
        if( ( CLsel_D < OrderOpenPrice() ) ||(Close_all_Orders_after==true&&Hour()>=Close_after_Hour&&Minute()>=Close_after_Min) ){

          if(IsTradeAllowed()==true)OrderClose(OrderTicket(),OrderLots(),Ask,Slippage,Red);

          if(IsTradeContextBusy()==true)Sleep(Sl_MS);
       
          LotsSel = OrderLots() + LotsPlus;

          if( LotsSel <= LotsBuy )LotsSel = LotsBuy + LotsSel;

} } } } }


//=============================================================================================================
// E A  F U N K T I O N E N  B E E N D E N
//=============================================================================================================
return(NULL);}


Angehängte Dateien
.zip   LoSh_AlwInv_Dist_V2.zip (Größe: 3,05 KB / Downloads: 1)


Nachrichten in diesem Thema
Broker zum Forex Scalpen und Hedgen mit Metatrader 4 - von Valerius - 07.04.2020, 15:58
RE: Broker zum Forex Scalpen und Hedgen mit Metatrader 4 - von Valerius - 20.05.2020, 14:10
RE: Broker zum Forex Scalpen und Hedgen mit Metatrader 4 - von Exchange Vision - 23.05.2020, 01:33

Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
Notiz Frage zu Tradingview Superchart Nutzung mit Broker Trade Republik AndiK87X 0 462 05.02.2024, 10:46
Letzter Beitrag: AndiK87X
Notiz Forex Trading Austausch Symon89 6 3.494 12.08.2022, 21:04
Letzter Beitrag: cubanpete
Notiz Trading Wiedereinsteiger // Newsfeed Quellen -> Forex, DAX, Rohstoffe, Krypto, Akt Mighty 13 8.084 05.12.2020, 18:13
Letzter Beitrag: Honnete
Notiz Welche Währung nehmen bei Broker? BaLü 20 12.992 15.09.2019, 18:51
Letzter Beitrag: Lanco

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste