Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 802

 
pako:

ChartFirst

Gibt die Kennung der ersten Karte des Client-Terminals zurück.

Ich verstehe, dass dies das Diagramm ganz links ist.

Leider ist das nicht der Fall, aber es ist leicht zu überprüfen:

1. Öffnen Sie 2-3 Währungspaare im Terminal

2. Führen Sie den Code aus, um ihn zu überprüfen:

   long ch=ChartFirst();
   Print("Первый ID терминала: ",ch, ", символ: ",ChartSymbol(ch),", таймфрейм: ",ChartPeriod(ch));
   for(int i=1;i<=100;i++) {
      ch=ChartNext(ch);
      if(ch<0)break;
      Print(i," chart ID for ",ChartSymbol(ch),ChartPeriod(ch),": ",ch);
  }
 
gyfto:
Ich habe den vagen Verdacht, dass dem nicht so ist. Ich schreibe morgen zurück, ich bin jetzt bei der Arbeit.
Hilft nur, wenn sich die Balken im Unterfenster bewegen. Aber wir müssen den Skalenwert irgendwie abfangen. Wie?
 
Wer weiß, ob es möglich ist, den TakeProfit einer offenen Order in die Minuszone zu ändern, wenn sich der Handel in der Minuszone befindet?
 
woin2110:
Wer weiß, ob es möglich ist, den TakeProfit einer offenen Order in die Minuszone zu ändern, wenn der Handel in der Minuszone ist?
Natürlich können Sie das.
 
Hallo. Ich habe gerade begonnen, ein EA vor ein paar Tagen zu schreiben. Ich habe Erfahrung in der Programmierung, aber ich habe keine Programmierung in MQL4 noch getan. Ich habe eine Menge zu lernen, so dass ich für eine fertige Lösung fragen)))). sagen wir, ich möchte eine Bestellung bei 0,01 viel zu öffnen und ich brauche, um takeprofit 0,5 zu verdienen. bitte zeigen Sie mir den richtigen Weg, es zu tun.
 

Während ich auf eine Antwort wartete, suchte und fand ich etwas und machte dies. Wird es richtig angezeigt? Es ist Sonntag und ich möchte nicht bis Mitternacht warten, um herauszufinden, ob ich es richtig geschrieben habe.


  if(Count ==0)
        symbol = Symbol();
        
   double bid   =MarketInfo(symbol,MODE_BID); // Запрос значения Bid
   double ask   =MarketInfo(symbol,MODE_ASK); // Запрос значения Ask
   double point =MarketInfo(symbol,MODE_POINT);//Запрос Point  
   double  value =MarketInfo(OrderSymbol(), MODE_TICKVALUE);// Размер минимального изменения цены инструмента в валюте депозита
   double stoplevel = MarketInfo(symbol,MODE_STOPLEVEL);
   double digits =   MarketInfo(symbol,MODE_DIGITS);


   
   if( bid<= stoploss1||step1 == 0)
   {
      step1++;
      stoplevel= NormalizeDouble(stoplevel*point,digits);
      stoploss1 = ask-stoplevel;
      takeprofit1 = ask+stoplevel;

 
      double profit =0.5;
      double takeprofit2= profit * point * value * lot1 + bid;
      takeprofit2 = NormalizeDouble(takeprofit2,digits);
      if (takeprofit2 > takeprofit1)
         takeprofit1 = takeprofit2;


 
pycha:

Während ich auf eine Antwort wartete, suchte und fand ich etwas und machte dies. Wird es richtig angezeigt? Es ist Sonntag und ich möchte nicht bis Mitternacht warten, um herauszufinden, ob ich es richtig geschrieben habe.


  if(Count ==0)
        symbol = Symbol();
        
   double bid   =MarketInfo(symbol,MODE_BID); // Запрос значения Bid
   double ask   =MarketInfo(symbol,MODE_ASK); // Запрос значения Ask
   double point =MarketInfo(symbol,MODE_POINT);//Запрос Point  
   double  value =MarketInfo(OrderSymbol(), MODE_TICKVALUE);// Размер минимального изменения цены инструмента в валюте депозита
   double stoplevel = MarketInfo(symbol,MODE_STOPLEVEL);
   double digits =   MarketInfo(symbol,MODE_DIGITS);


   
   if( bid<= stoploss1||step1 == 0)
   {
      step1++;
      stoplevel= NormalizeDouble(stoplevel*point,digits);
      stoploss1 = ask-stoplevel;
      takeprofit1 = ask+stoplevel;

 
      double profit =0.5;
      double takeprofit2= profit * point * value * lot1 + bid;
      takeprofit2 = NormalizeDouble(takeprofit2,digits);
      if (takeprofit2 > takeprofit1)
         takeprofit1 = takeprofit2;



Ist das nicht einfacher?

 if(OrderProfit() > 0.5) OrderClose();

.

 
Ich muss einen Gewinn berechnen, bevor ich einen Auftrag eröffne, so dass er sofort bei der Auftragserstellung festgelegt werden kann.
 
Ich werde dieses Programm nicht nur für den Handel, sondern auch für die Analyse der Historie verwenden. Ich muss berechnen, wie viele Aufträge für die gewünschten Parameter in einem bestimmten Zeitraum offen waren. also muss alles manuell berechnet werden
 
pycha:
Ich werde dieses Programm nicht nur für den Handel, sondern auch für die Analyse der Historie verwenden. Ich muss berechnen, wie viele Aufträge für die gewünschten Parameter in einem bestimmten Zeitraum offen waren. also muss alles manuell berechnet werden

https://www.mql5.com/ru/forum/351

.