[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 362

 
Vinin >> :

So etwas hat bei mir funktioniert.

>> VIELEN DANK!

 

Guten Tag!

Ich habe heute eine Demo bei Alpari gemacht und war von fünf Nachkommastellen überrascht. Ich musste den EA neu erstellen und eine Zehn hinzufügen.

Wenn es nicht schwierig ist, den Unterschied zwischen fünf und vier Dezimalstellen zu erklären oder mir einen Link zu geben, wo man darüber lesen kann.

 
gvi2504 >> :

Guten Tag!

Ich habe heute eine Demo bei Alpari gemacht und war von fünf Nachkommastellen überrascht. Ich musste den Expert Advisor neu erstellen und eine Zehn hinzufügen.

Wenn Sie mir den Unterschied zwischen fünf und vier Ziffern erklären können, oder mir einen Link geben, wo ich das nachlesen kann.


Ich mache das so - ich setze start() ganz am Anfang (wahrscheinlich besser in init() ?):

// ```````````````````````````````
   double PointX = 0;
   if(Digits==5 || Digits==3) {
      PointX = Point * 10;
   }
   if(Digits==4 || Digits==2) {
      PointX = Point;
   }
// ```````````````````````````````


Und dann verwende ich "PointX" anstelle von "Point".

 
chief2000 >> :


Dies ist, was ich tue - ich setze start() am Anfang (wahrscheinlich besser in init() ?):


Und dann verwende ich "PointX" anstelle von "Point".





Ich danke Ihnen vielmals.

 
Shniperson писал(а) >>
>> Meine Herren, wie kann ich erreichen, dass die Werte der H1-Balken beim Handel auf H4 berücksichtigt werden? z.B. if(......&& Close[0](bar H1)>High[1](bar H1) ???????????

ungefähr hier... aber dies ist ein Beispiel für einen funktionierenden Code für macd & ) || ( diese unterstrichene Stelle kombiniert die Bedingung des spezifischen Codes

Indikator>0 && Indikator<=Signalindikator && Indikator>Signalindikator verbindet H4 mit H1 in dem Sinne, dass die Situation in H4 und in H1 die gleiche für MAKD ist (oder nicht - es hängt von <=0 ab (kleiner oder gleich Null / möglich zu MAKD) außer &&(gleichzeitig) erlaubt, die Beziehung zu komplizieren)

MacdCurrent=indicator_MAIN,0);
MacdPrevious=indicator_MAIN,1);
SignalCurrent=indicator_SIGNAL,0);
SignalPrevious=SIGNAL indicator,1);

total=AuftragsSumme();
for(cnt=0;cnt<Gesamt;cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderType()<=OP_SELL && OrderSymbol()==Symbol()) // Prüfung auf Symbol
{
if(OrderType()==OP_BUY) // Long-Position wird eröffnet
{
if((Anzeige>0 && Anzeige<=Signalanzeige && Anzeige>Signalanzeige) || ( Anzeige<=0 && Anzeige>0))
{
OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // Position schließen

Aber dieser Code stammt von jemand anderem, und ich kann ihn nicht selbst ändern, das ist sicher.

 
JEKA писал(а) >>
Hallo, ich denke, die Frage ist mehr für fortgeschrittene Programmierer als für Anfänger wie mich, obwohl meine Idee für beide nützlich sein wird! Also die Essenz der Frage, ist es möglich, einen Indikator oder Berater auf der Grundlage von zwei Indikatoren zu schreiben? V-TBv6.ex4, 5_ZZ_Semafor.ex4 Ich würde es gerne selbst schreiben, aber k sozhily Ich besitze nicht solche Kenntnisse, und ich möchte Hilfe von denen, die auch interesesito diese Idee oder zu denen, die die notwendigen Kenntnisse in diesem Bereich haben zu suchen.

Es gibt einen Trading Advisor für Ma und McD.

Ma für Öffnen, Maqd für Schließen

Ma werden einfach bei der Eröffnung im Code für die Open Position verwendet (in den Skripten, die zusammen mit dem Terminal geliefert werden, sind dies Ma und Poppy), ein Block, in dem ein Indikator (Ma) zum Close (Poppy) geht.

Wenn zwei Indikatoren gleichzeitig erforderlich sind, werden zwei Indikatoren in dem erforderlichen Block deklariert und ihre Werte werden über

void CheckForClose()
{
double MacdCurrent, MacdPrevious, SignalCurrent;
double SignalPrevious;
int cnt, ticket, total;

MacdCurrent=iMACD(NULL,0,MACD_FastEMA,MACD_SlowEMA,MACD_SMA,PRICE_CLOSE,MODE_MAIN,0);
MacdPrevious=iMACD(NULL,0,MACD_FastEMA,MACD_SlowEMA,MACD_SMA,PRICE_CLOSE,MODE_MAIN,1);
SignalCurrent=iMACD(NULL,0,MACD_FastEMA,MACD_SlowEMA,MACD_SMA,PRICE_CLOSE,MODE_SIGNAL,0);
SignalPrevious=iMACD(NULL,0,MACD_FastEMA,MACD_SlowEMA,MACD_SMA,PRICE_CLOSE,MODE_SIGNAL,1);

total=AuftragsSumme();
for(cnt=0;cnt<Gesamt;cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderType()<=OP_SELL && OrderSymbol()==Symbol()) // Prüfung auf Symbol
{
if(OrderType()==OP_BUY) // Long-Position wird eröffnet
{
if((*>0 && *<=* && *>* ) || (*<=0 && *>0))
{
OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // Position schließen
tek_mode=1;
return(0); // exit
}

}
sonst // Wechsel zur Short-Position
{
if((Macd*<0 && Macd*>=* && *<* ) || (*>=0 && *<0))
{
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // Position schließen
tek_mode=-1;
return(0); // exit
}
}
}
}
}
//+------------------------------------------------------------------+

wobei tek_mode=-1; verwendet wird, um den sofortigen Wiederholungswert zu kürzen. || und && ermöglichen es, zwei Gruppen von Bedingungen als eine einzige zu verwenden.

 

Können Sie mir einen Tipp geben?

Wie bekomme ich die Ticks von MT4 zu Matlab aus meiner eigenen DLL intelligent und so rationell wie möglich?

Hat jemand so etwas schon einmal gemacht?

Von MT in allgemeiner Form:

start()

{

fMyDll(Bid); // Übergabe des Gebots an die Funktion meiner DLL bei jedem neuen Tick

}

Wie geht es weiter? Was ist die Austauschmethode?

 
Gibt es beim Testen von Strategien eine Grenze für die Anzahl der Parameterkombinationen? Das heißt, die Anzahl der Durchgänge des Prüfers.
 
Der VSI-Indikator wurde überarbeitet. Es ist ein bisschen unterentwickelt. Kann mir jemand sagen, wo der Fehler liegt?
Dateien:
vsi_twin.mq4  4 kb
 
nikost писал(а) >>
Der VSI-Indikator wurde überarbeitet. Es ist ein bisschen unterentwickelt. Kann mir jemand sagen, wo der Fehler liegt?
Dateien: