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

 
FoxUA:


Um eine weitere Klärung zu vermeiden. FoxUA erstellen Sie einen eigenen Thread mit einer Frage, in der Sie alle Details offenlegen. "Fragen von Neulingen..." ist ein Thema für "schnelle" "Fragen und Antworten".
 
DDFedor:

Um weitere Unklarheiten zu vermeiden. FoxUA, erstellen Sie einen eigenen Thread mit einer Frage, in dem Sie alle Details offenlegen. "Alle Fragen von Neulingen..." ist ein Thema für "schnelle Fragen und Antworten".

Ich überprüfe keine Einstellungen, sondern kommentiere eine Aussage, die ich mir selbst gegenüber gemacht habe,

Ich spreche nicht von schnell, ich spreche von sinnlosen Kommentaren, die nicht helfen.

 
FoxUA:

Andrey, du bist verwirrt, ich habe mir den Code angesehen, deine Variable HaveBuyLimitOrderEnd kommt nur in dieser Konstruktion vor:

  if (HaveBuyLimitOrderEnd== true) 
  {DeleteOrder();  // Выбираем            
  }}

Und einige Beiträge weiter oben schreiben Sie es in diesem Beitrag:

Der springende Punkt ist, dass der erste Wert gut funktioniert, dieser aber nicht.

if(HaveBuyLimitOrderEnd== true)
{ModifyBuyStopOrder(PRAskS); // Überprüfen Sie es
} }

Wie sollte es sein?

 
ToLik_SRGV:

Andrei, Sie sind verwirrt, ich habe mir den Code angesehen, Ihre Variable HaveBuyLimitOrderEnd kommt nur in dieser Konstruktion vor:

Und einige Beiträge weiter oben schreiben Sie es in diesem Beitrag:

Sollte es so sein?



Ja, das ist der logische Teil, denn die Blöcke sind von Angesicht zu Angesicht betrachtet im Grunde genommen die gleichen Unterschiede

if(bs==1&&bl==1)
{OpenBuyLimitOrder(Lot*7,PRAskL); 
  if (HaveBuyStopOrder== true) 
  ModifyBuyStopOrder(PRAskS);  // Выбираем            
      
  }   

if(bt==1&&bl==1) 
{OpenBuyStopOrder(Lot,PRBidS);
   if (HaveBuyLimitOrder== true) 
  ModifyBuyLimitOrder(PRAskL);  // Выбираем            
  } 

if(ss==1&&sl==1)
{OpenSellLimitOrder(Lot*7,PRBidL); 
   if (HaveSellStopOrder== true) 
  ModifySellStopOrder(PRBidS);  // Выбираем            
  } 

if(st==1&&sl==1)
{OpenSellStopOrder(Lot,PRBidS); 
  if (HaveSellLimitOrder== true) 
  ModifySellLimitOrder(PRBidL);  // Выбираем            
  } 

  if(bs==1&&bl==3)
{OpenBuyLimitOrderEnd(Lot*15,PRAskL); 
   if (HaveBuyStopOrder== true) 
  ModifyBuyStopOrder(PRAskS);  // Выбираем            
  } 

if(bt==1&&bl==3) 
{OpenBuyStopOrder(Lot,PRBidS);
OpenBuyLimitOrder(Lot*3,PRAskL);
  if (HaveBuyLimitOrder== true) 
  DeleteOrder();  // Выбираем            
  } 

if(ss==1&&sl==3)
{OpenSellLimitOrderEnd(Lot*15,PRBidL); 
   if (HaveSellStopOrder== true) 
  ModifySellStopOrder(PRBidS);  // Выбираем            
  } 

if(st==1&&sl==3)
{OpenSellStopOrder(Lot,PRBidS);
OpenSellLimitOrder(Lot*3,PRBidL);
   if (HaveSellLimitOrder== true) 
  DeleteOrder();  // Выбираем            
  } 

   if(bs==1&&bl==7)
{
    if (HaveBuyStopOrder== true) 
  ModifyBuyStopOrder(PRAskS);  // Выбираем            
  } 

if(bt==1&&bl==7) 
{OpenBuyStopOrder(Lot,PRBidS);
OpenBuyLimitOrder(Lot*3,PRAskL); 
  if (HaveBuyLimitOrderEnd== true) 
  DeleteOrder();  // Выбираем            
  } 

if(ss==1&&sl==7)
{  if (HaveSellStopOrder== true) 
  ModifySellStopOrder(PRBidS);  // Выбираем            
  } 

if(st==1&&sl==7)
{OpenSellStopOrder(Lot,PRBidS); 
OpenSellLimitOrder(Lot*3,PRBidL); 
  if (HaveSellLimitOrderEnd== true) 
  DeleteOrder();  // Выбираем            
  } 

Jeder Block klingt also gleich: "Wenn die erste Variable 1 und die zweite Variable 1,3,7 ist, dann öffnen Sie einen schwebenden Auftrag mit dem Lot ____ und dem Preis _____" und wenn das Flag des ausgewählten offenen schwebenden Auftrags gleich der Wahrheit ist, dann ändern (löschen) Sie diesen Auftrag

 
Hallo. Die Situation ist wie folgt: ein Indikatorverschiebungswert aus dem Puffer wird durch die for-Anweisung gesucht, d.h. for(i=0;i<=100;i++), MD1=MD1+i, MD1=iMACD(........, i), die Position wird nur eröffnet, wenn der letzte Balken (in diesem Fall der 100.) die Eröffnungskriterien erfüllt. Ich möchte, dass er sich in Richtung der 0-Balken öffnet (wenn die Kriterien korrekt sind) und spätere Balken nicht berücksichtigt. Gibt es eine Lösung für dieses Problem? Vielen Dank im Voraus.
 
wahrscheinlich for(i=100;i>=0;i--), ?
 
sergeev:
wahrscheinlich for(i=100;i>=0;i--), ?
Aus irgendeinem Grund werden die Aufträge nicht geöffnet (MD1=MD1-i geändert).
 

Hallo an alle, wurde mir geraten, die sowjetische zu vereinfachen, begann ich, um es zu vereinfachen, aber ich habe ein Problem, das Wesen des Problems, wenn Sie Aufträge in das Journal schreibt Fehler 4107 öffnen, aber es öffnet leicht alle Aufträge, die auf das, was das Problem aussehen kann, sage ich auf einmal alle den Code aus der Bibliothek Kim Igor V. aka KimIV genommen wird,

Dateien:
test_21.mq4  15 kb
 
sergeev:
wahrscheinlich for(i=100;i>=0;i--), ?
Scheint zu funktionieren, nur i>=2, wenn 0 oder 1, gibt es -1 bzw. 0 zurück. Danke.
 
FoxUA:

Hallo an alle, wurde mir geraten, die sowjetische zu vereinfachen, begann ich, um es zu vereinfachen, aber ich habe ein Problem, das Wesen des Problems, wenn Sie Aufträge in das Journal zu öffnen schreibt Fehler 4107, aber es öffnet leicht alle Aufträge, die auf das, was das Problem aussehen kann, sage ich auf einmal alle den Code aus der Bibliothek Kim Igor V. aka KimIV genommen wird,

Normalisieren Sie die Stoppkurse.
Grund der Beschwerde: