Wie programmiert man? - Seite 165

 

Dankeschön

manchmal ist die Lösung so einfach.....

 

Wie fügen Sie einen Kommentar hinzu, der anzeigt, wie viele Kauf- und Verkaufspositionen zu einem beliebigen Zeitpunkt für jedes Paar offen sind?

double Buy.cm = MarketInfo(Symbol(),MODE_TRADES); ??? buy

double Sell.cm = MarketInfo(Symbol(),MODE_TRADES); ??? sell

Zum Wohl

Beno

 

Wenn Sie eine Funktion haben, die Aufträge zählt, passen Sie sie einfach an, um eine Zählervariable für Käufe und Verkäufe zu haben. Schreiben Sie dann einen Kommentar wie üblich.

Lux

 
luxinterior:
Wenn Sie eine Funktion haben, die Aufträge zählt, passen Sie sie einfach an, um eine Zählervariable für Käufe und Verkäufe zu haben. Dann schreiben Sie einen Kommentar wie üblich. lux

ok danke lux

 
Beno:
Wie fügen Sie einen Kommentar hinzu, der anzeigt, wie viele Kauf- und Verkaufspositionen zu einem beliebigen Zeitpunkt auf Paarbasis offen sind?

double Buy.cm = MarketInfo(Symbol(),MODE_TRADES); ??? buy

double Sell.cm = MarketInfo(Symbol(),MODE_TRADES); ??? sell

Vielen Dank

Beno

Sie könnten so etwas tun:

int Open_Trades = OrdersTotal();

int Pos=0;

int Buy_Total=0;

int Sell_Total=0;

while (Open_Trades > Pos)

{

if (OrderSelect(Pos,SELECT_BY_POS,MODE_TRADES))

{

int Order_Type = OrderType();

if (Order_Type == OP_BUY)

{

Buy_Total++;

}

if (Order_Type == OP_SELL)

{

Sell_Total++;

}

}

Pos++;

}

Comment("\nBuy Orders Total = ",Buy_Total,

"\nSell Orders Total = ",Sell_Total);

Oder eine andere Variante.

Dateien:
 

Indikator muss auf Bollinger Bands verweisen

Ich habe diesen Indikator, aber ich brauche einen Verweis auf die Bollinger Bands. Ich benötige einen Verweis auf die Bollinger Bänder und die Innenkerze. Ich würde auch gerne auf die Stochastik verweisen. Irgendwelche Ideen.

///------------------------------------------------------------------+

//| MS IPP2 v2 3/6/09 |

//| MarketSlayer |

//| BillTainter@gmail.com |

// +------------------------------------------------------------------+

#property copyright " MarketSlayer "

#property link "BillTainter@gmail.com"

#property indicator_chart_window

//---- Eingabeparameter

extern int barsToProcess=1000;

// +------------------------------------------------------------------+

//| Benutzerdefinierte Indikator-Initialisierungsfunktion |

// +------------------------------------------------------------------+

int init ()

{

//---- Indikatoren

//----

return (0);

}

// +------------------------------------------------------------------+

//| Benutzerdefinierte Indikator-Deinitialisierungsfunktion |

// +------------------------------------------------------------------+

int deinit ()

{

//----

int i;

for (i=0; i< Bars; i++)

{

ObjectDelete ("Bearish IPP2" +DoubleToStr (i, 0));

ObjectDelete ("Bullish IPP2" +DoubleToStr (i, 0));

}

//----

return (0);

}

// +------------------------------------------------------------------+

//| Benutzerdefinierte Indikator-Iterationsfunktion |

// +------------------------------------------------------------------+

int start ()

{

int counted_bars=IndicatorCounted (),

//----

begrenzen,

i=0;

if (gezählte_Balken> 0)

gezählte_Balken--;

limit=Balken-gezählt_Balken;

if (limit> barsToProcess)

Grenzwert=BalkenBearbeiten;

while (i< limit)

{

// BÄRISCH IPP#2

// Kerze[1] ist am oder nahe dem oberen Bollinger Band

// Kerze[2] befindet sich innerhalb von Kerze[1]

if ((Close [ i+2] > Open [ i+2]) && (Close [ i+1]> Open ) && (Open > Close [ i+1])

&& (Hoch Tief [ i+1]))

{

ObjectCreate ("Bearish IPP2" +DoubleToStr (i, 0), OBJ_ARROW, 0, Time , High + 50*Point);

ObjectSet ("Bearish IPP2" +DoubleToStr (i, 0), OBJPROP_ARROWCODE, 130);

ObjectSet ("Bearish IPP2" +DoubleToStr (i, 0), OBJPROP_COLOR, Red );

Alert("Bearish IPP2 -SHORT @", Low);

}

// Bullish IPP#2

if ((Close [ i+2] < Open [ i+2]) && (Close [ i+1]< Open ) && (Open < Close [ i+1])

&& (High Low [ i+1]))

{

ObjectCreate ("Bullish IPP2" +DoubleToStr (i, 0), OBJ_ARROW, 0, Time , Low - 50*Point);

ObjectSet ("Hausse IPP2" +DoubleToStr (i, 0), OBJPROP_ARROWCODE, 130);

ObjectSet ("Hausse IPP2" +DoubleToStr (i, 0), OBJPROP_COLOR, Lime );

Alert("Bullish IPP2 -LONG @", High,Time);

// PlaySound("alert.wav");

}

i++;

}

//----

return (0);

}

//+------------------------------------------------------------------+

 

Gibt es eine Möglichkeit zu prüfen, ob der letzte Auftrag durch Erreichen von tp, sl oder ohne Erreichen eines der beiden abgeschlossen wurde?

Grüße

 

Kann mir jemand helfen, diesen Indikator mit einem akustischen Signal zu versehen?

Ich danke Ihnen!

Dateien:
hilow3.mq4  2 kb
 
jan100:
Gibt es eine Möglichkeit zu überprüfen, ob die letzte Order durch Erreichen von tp, sl oder ohne Erreichen eines dieser Werte geschlossen wurde?

Wenn OrderClosePrice() gleich OrderStopLoss() ist, wurde die Order durch Erreichen von sl geschlossen.

 

Umwandlung eines Indikators in einen EA

Hallo zusammen,

Ich habe ein Problem mit dem EA von RSI und MA...

Ich habe den Indikator arbeiten richtig... Alles, was ich will, ist, es in EA zu konvertieren...

Ich habe ein paar Dinge versucht. IndicatorCounted() funktioniert nicht in EA, also habe ich versucht, die Werte der for-Schleife hart zu kodieren (bar=0; bar<15; bar++), ich bekam korrekte RSI, aber SMA ist nicht geben corect Werte...

Ich hänge den Code für den SMA an, der den RSI kreuzt...

Könnte mir also bitte jemand helfen, diesen Indikator in EA zu konvertieren?

***************************************************************************************************************************************

#property indicator_separate_window

#Eigenschaft indicator_buffers 2

#property indicator_color1 RasenGrün

#property indicator_color2 Dunkelblau

double ExtMapBuffer1[];

double ExtMapBuffer2[];

int init()

{

IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));

SetIndexStyle(0,DRAW_LINE);

SetIndexPuffer(0,ExtMapPuffer1);

SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,2);

SetIndexBuffer(1,ExtMapBuffer2);

return(0);

}

int deinit()

{

return(0);

}

int start()

{

int bar, limit;

int gezählte_Balken=IndicatorCounted();

if(gezählte_Balken<0) return(-1);

if(gezählte_Balken>0) gezählte_Balken--;

limit=Balken-IndikatorGezählt();

for(bar=0; bar<limit; bar++)

ExtMapBuffer1 = iRSI(NULL,0,14,PRICE_TYPICAL,bar);

for(bar=0; bar<limit; bar++)

ExtMapBuffer2=iMAOnArray(ExtMapBuffer1,Bars,14,0,MODE_SMA,bar);

return(0);

}

***************************************************************************************************************************************

Vielen Dank und Grüße,

Ganesh

Grund der Beschwerde: