[ARCHIV!] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen - 4. - Seite 626

 

Ich habe nur eine Position auf dem Markt...also wird es nicht daneben gehen...

if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES))

 
rigonich:

Wenn Sie möchten, dass ich Ihre Fragen nicht beantworte, sagen Sie es einfach.

Nein, nein!!! Ich will ja, aber ich will nicht, dass du dir noch mehr Arbeit machst... du hilfst ja schon WIRKLICH... was ich also selbst herausgefunden habe (du kannst nicht einfach fragen und dann herumsitzen und nichts tun!) - ich werde es schnell löschen...
 
rigonich:

OrderModify(OrderTicket(),OrderLots( ),stop_loss,OrderTakeProfit( ), 0,CLR_NONE);

Warte, du hast also eine Menge... 0.


Vielen Dank dafür!!!!

Hier können Sie nachdenken....

diese Zeile stammt aus der "modify"-Funktion - ich habe sie nicht selbst geschrieben, sondern vorgefertigt eingefügt, und sie funktioniert.... vielleicht bedeutet "0" die aktuelle Positionsgröße? aber ich würde es lieber auf einen Wert festlegen - danke, viele sind behoben

 
rigonich:

OrderModify(OrderTicket(),OrderLots( ),stop_loss,OrderTakeProfit( ), 0,CLR_NONE);

Stopp, Ihr Los ist also 0.


keine Lose in modifiziert :))))))) es gibt einen Eröffnungspreis aus irgendeinem Grund...

OrderModify( int ticket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE)
 
lottamer:


es gibt keine Lose in der Änderung :))))))) es gibt einen Eröffnungspreis aus irgendeinem Grund...

OrderModify( int ticket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE)


Richtig, ich habe es beim Kopieren und Einfügen verwechselt, ich kann mich nicht an das Einfügen in Kommentare gewöhnen, wenn es aus der Hilfe kopiert wird, wird es als Link eingefügt.

Wenn ich eine Funktion mit vielen Parametern einfüge, kopiere ich sie aus der Hilfe und ersetze die Parameter durch die, die ich in turn\ brauche, um nicht durcheinander zu kommen.

 

Liebe Leute!

PFG FX traider (neueste Version) heruntergeladen und gestartet. Ich habe versucht, einen Indikator zu erstellen.

Unmittelbar zwei Rätsel:

1. mein Indikator ist unter dem Editor sichtbar, öffnet sich und alles, aber ich kann ihn nicht im Dateisystem finden. Überhaupt nicht, auch nicht bei der Suche.

2. der Indikator öffnet die Datei - schreibt die Ticks. Er schreibt und stürzt ab, aber ich kann die Datei auch nicht finden!!!!

Wie kann das sein? Windows 7.

 

Brüder, ignoriert nicht die Bemühungen eines Anfängers!

Ich brauche ein fertiges Skript (oder etwas Ähnliches), das in den Archiven anzeigt

Bewegungen im Zeitplan, gefiltert nach Schwung und Zeit.

Zum Beispiel begann die Bewegung um 14.00 Uhr und endete um 14.45 Uhr.

Und der Betrag der Bewegung betrug 410 Punkte (in fünfstelliger Berechnung).

Gibt es also ein Skript, das solche Bewegungen auf dem Chart "in der Vergangenheit" visuell markiert?

und so, dass die Kraft-Zeit-Werte unabhängig voneinander eingefügt werden können.

______

Bitte geben Sie eine Zweigstelle oder einen Ort an, wo man Sie beraten kann.

In der Programmierung - nicht Aristoteles, aber ich vermute, dass ein solches Skript nicht schwer zu erstellen ist.

___

Ich bin bereit, Ihnen mitzuteilen, was ich gefunden habe, und - was am wichtigsten ist - die Parameter für den Filter nach Zeit und Stärke.

 
Chibrikin:

Liebe Leute!

PFG FX traider (neueste Version) heruntergeladen und gestartet. Ich habe versucht, einen Indikator zu erstellen.

Unmittelbar zwei Rätsel:

1. mein Indikator ist unter dem Editor sichtbar, öffnet sich und alles, aber ich kann ihn nicht im Dateisystem finden. Überhaupt nicht, auch nicht bei der Suche.

2. der Indikator öffnet die Datei - schreibt die Ticks. Er schreibt und stürzt ab, aber ich kann die Datei auch nicht finden!!!!

Wie kann das sein? Windows 7.


In Semester werden einige Dateien manchmal nicht im Terminal abgelegt, sondern in D:\BenutzernameAppData\Local\VirtualStore\Program Files, dann der Name des Terminals

Dies geschieht häufig, wenn mehrere Terminals in verschiedenen Verzeichnissen installiert sind oder sich viele Indikatoren, EAs oder andere Benutzerdateien im Terminal angesammelt haben.

 
TUNGUS:

Brüder, ignoriert nicht die Bemühungen eines Anfängers!

Ich brauche ein fertiges Skript (oder etwas Ähnliches), das in den Archiven anzeigt

Bewegungen im Zeitplan, gefiltert nach Schwung und Zeit.

Zum Beispiel begann die Bewegung um 14.00 Uhr und endete um 14.45 Uhr.

Und der Betrag der Bewegung betrug 410 Punkte (in fünfstelliger Berechnung).

Gibt es also ein Skript, das solche Bewegungen auf dem Chart "in der Vergangenheit" visuell markiert?

und so, dass die Kraft-Zeit-Werte unabhängig voneinander eingefügt werden können.

______

Bitte geben Sie eine Zweigstelle oder einen Ort an, wo man Sie beraten kann.

In der Programmierung - nicht Aristoteles, aber ich vermute, dass ein solches Skript nicht schwer zu erstellen ist.

___

Ich bin bereit, Ihnen mitzuteilen, was ich gefunden habe, und - was am wichtigsten ist - die Parameter für den Filter nach Zeit und Stärke.


Ich bin mir nicht ganz sicher, was Sie von dem Skript erwarten.
 

Ich brauche dringend Hilfe, ich bin total verwirrt. Hier finden Sie die Handelsfunktion und die Auftragsänderungsfunktion:

void OrdersModifying(double& sl, double& tp)
{
  int total = OrdersTotal() - 1;
  sl = 0; tp = 0;
  
  for(int i=total; i>=0; i--)
  {
    if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == true)                            // Если ордер есть и он выбран..
    {
      if(g_type == OP_BUY)
      {
        if(i_sl != 0)                                                                 // Если входной параметр стоп-лосса не равен 0, то..
           sl = NormalizeDouble(OrderOpenPrice() - i_sl*pt,Digits);                    // Получаем значение стоп-лосса для выбранного ордера
        if(i_tp != 0)                                                                 // Если входной параметр тейкпрофита не равен 0, то..
           tp = NormalizeDouble(OrderOpenPrice() + i_tp*pt,Digits);                    // Получаем значение тейкпрофита для выбранного ордера
      }
      if(g_type == OP_SELL)
      {
        if(i_sl != 0)                                                                 // Если входной параметр стоп-лосса не равен 0, то..
           sl = NormalizeDouble(OrderOpenPrice() + i_sl*pt,Digits);                // Получаем значение стоп-лосса для выбранного ордера
        if(i_tp != 0)                                                                 // Если входной параметр тейкпрофита не равен 0, то..
           tp = NormalizeDouble(OrderOpenPrice() - i_tp*pt,Digits);                // Получаем значение тейкпрофита для выбранного ордера
      }
      if(sl != 0 || tp != 0)                                                            // Если полученные значения sl и tp не равныы 0, то..
      {
        OrderModify(g_ticket,OrderOpenPrice(),sl,tp,OrderOpenTime() + 86400,Lime);      // Модифицируем ордер
      }
    }
  }
}
bool OpenBuy()
{
  g_ticket = -1;
  string myNote = "сов баянул";
  
  if(GetPriceToInput() < Ask)
  {       
    g_ticket = OrderSend(Symbol(),OP_BUYLIMIT,0.1,GetPriceToInput(),3,0,0,myNote,myMagic,0,Blue);
  }
    if(g_ticket > 0 && OrderSelect(g_ticket,SELECT_BY_TICKET,MODE_TRADES) == true)
 
  return(true);
}
bool OpenSell()
{
  g_ticket = -1;
  string myNote = "сов шортанул";
 
  if(GetPriceToInput() > Bid)
  {
    g_ticket = OrderSend(Symbol(),OP_SELLLIMIT,0.1,GetPriceToInput(),3,0,0,myNote,myMagic,0,Red);
  }
    if(g_ticket > 0 && OrderSelect(g_ticket,SELECT_BY_TICKET,MODE_TRADES) == true)
  
  return(true);
}
bool Trade (int signal)
{
  FindOrders();

  if(signal == SIGNAL_BUY)                                                          // Если сигнал на покупку и открытых ордеров нет..
    if(!OpenBuy())                                                                  // открываем лимитный ордер на покупку
      return(false);                                                                
      
  if(signal == SIGNAL_SELL)                                                       // Если сигнал на продажу и открытых ордеров нет..
     if(!OpenSell())
       return(false);                                                              // открываем лимитный ордер на продажу
  
  OrdersModifying(sl, tp); - ТУТ НЕ ВЪЕЗЖАЮ КАК БЫТЬ

  return(true);
}

Bei mir funktioniert derzeit die Auftragsänderung nicht, obwohl, als mehrere Funktionen in einer waren, alles funktionierte. Aber ich möchte, dass alle Funktionen der Einfachheit halber getrennt werden. Generell würde ich gerne die FunktionOrdersModifying haben, um Aufträge zu ändern. Ich verstehe, dass es logischerweise in die Funktion Trade eingefügt werden sollte, in die ich es eingefügt habe, aber wir müssen 2 Parameter sl und tp aus der FunktionOrdersModifying an sie übergeben.

Habe ich die Variablen sl und tp korrekt über die Parameter der FunktionOrdersModifying übergeben ?