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

 
jemand die Struktur eines Limitauftrags aufschreiben
 
Ich verwende das Flive-Signal, aber manchmal möchte ich einen Auftrag selbst schließen. Aber sobald ich sie schließe, öffnet sie sich wieder. Gibt es eine Möglichkeit, dieses Problem zu lösen?
 
Artur116:
Ich verwende das Flive-Signal, aber manchmal möchte ich einen Auftrag selbst schließen. Aber sobald ich sie schließe, öffnet sie sich wieder. Gibt es eine Möglichkeit, dieses Problem zu lösen?

Deaktivieren Sie "Positionen synchronisieren...".
 
Nesradamus:
Ich bin davon ausgegangen, dass es nur zwei monatliche Extrema gibt - Minimum und Maximum... Nun, egal, zuerst hatte ich einen langen Code, deshalb habe ich um Hilfe gebeten... Aber es dämmerte mir, dass ich es in vier Zeilen unterbringen konnte.

Dies ist der Fall bei einer monatlichen Kerze. Natürlich wird es iHigh(Symbol(), PERIOD_MN1, BarOfMonth); und iLow(Symbol(), PERIOD_MN1, BarOfMonth) geben;

Und wenn wir auf einem Tagesdiagramm innerhalb eines Monats nach Extremwerten des Preises suchen müssen, gibt es mit Sicherheit mehr als einen auf mindestens 28 Balken ;)

 
Zver4991:

eine weitere Frage zur Funktion

wie man das Rechteck vorwärts statt rückwärts zeichnen kann, z. B. fünf Balken vorwärts zu einem bestimmten Preis ...... und es nicht neu zeichnen muss

Der Name "object_name" sollte die Zeit enthalten, zu der es gezeichnet wurde. Zum Beispiel "Object_name "+TimeToString(Time[0]); Dann hat jedes Rechteck seinen eigenen Namen.

Um die Verschiebung nach rechts vom Null-Balken festzulegen, addieren Sie die erforderliche Anzahl von Balken zu Time[0], z. B. Time[0]+Period()*5*60 (fünf Balken hinzufügen)

datetime t1=Time[10], t2=Time[0]+Period()*60*5;
SetRectangle(clrBlue,"Прямоугольник"+TimeToString(Time[0]),t1,Low[10],t2,High[0]);
 
#property strict
#include <Indicators\Trend.mqh>
bool ind;
CiMA MA;
extern int pos=1;
extern int sl=40;
extern int tp=70;
datetime time;
datetime time2;
bool trade=false;
bool trade2=false;
int a,b;
int OnInit()
  {
//---
   MA.Create(Symbol(),PERIOD_CURRENT,10,6,MODE_EMA,PRICE_CLOSE);//создал машку
//---
   return(INIT_SUCCEEDED);
   
  }
void OnTick()
  {
//---
  if(IsNewBar()==true)//если новый бар включаемся
     {
     if(buy(pos)==true)//если цена выше МА продолжаем
     {
      if(!ExistPositions(Symbol(),-1,-1,0))//если нету открых ордеров продолжаем
        {

         if(GetTypeLastClosePos(Symbol(),-1)!=OP_BUY)//если тип последней закрытой позиции был не на покупку то тогда только покупаем таким образом я пред остерегаюсь от повторных входов в покупку если цена 
//все ещо выше МА...но почему то не работает открываются и дальше сделки на покупку если ордер закрылся выше МА....ХОТЯ НЕ ДОЛЖО ТАК КАК Я ОГРАНИЧИЛ ПО ТИПУ ПОЗИЦИИ ПОСЛЕДНЮЮ СДЕЛКУ И ОНИ ДОЛЖНЫ ТОЛЬКО 
//       ЧЕРЕДОВАТСЯ И УЖ НИ КАК НЕ ПОВТОРЯТСЯ ПО НЕСКОЛЬКО РАЗ ПОДРЯД
           {
            trade=true;
           }
  if(trade==true)
        {
         OpenPosition(Symbol(),OP_BUY,0.1,Ask-sl*Point,Ask+tp*Point);
         trade=false;
        }
}
        }
    
     
if(sell(pos)==true)
{
   if(!ExistPositions(Symbol(),-1,-1,0))
     {

      if(GetTypeLastClosePos(Symbol(),-1)!=OP_SELL)
        {
         trade2=true;
        }

      if(trade2==true)
        {
         OpenPosition(Symbol(),OP_SELL,0.1,Bid+sl*Point,Bid-tp*Point);
         trade=false;
      }
  }}
 }
  }

//возвращает истину если закрытие бара  с указаной позицией выше МА

bool buy(int pos)
  {
   if(iClose(Symbol(),0,pos)>MA.Main(1))
      return true;
   else
      return false;
  }
//+------------------------------------------------------------------+
//| возвращает истину если закрытие бара  с указаной позицией ниже МА
//+------------------------------------------------------------------+
bool sell(int pos)
  {
   if(iClose(Symbol(),0,pos)<MA.Main(1))
      return true;
   else return false;
  }
ALLE FUNKTIONEN mit Ausnahme von zwei KAUF- und VERKAUFSBEDINGUNGEN wurden aus Kims Zweigstelle übernommen...... Bitte sagen Sie mir, wo ich einen Fehler gemacht habe... Ich brauche einen Handel, der an einer Kreuzung eröffnet wird.
 

Gibt es in mql4 eine Möglichkeit , Code aus der Ansicht auszublenden und den Codebereich so zu komprimieren, dass er unter dem Pluszeichen (+) platziert ist?

wie in der scharfen #region #endregion, wird Code zwischen diesen Direktiven möglich sein, zu kollabieren.

 
Ich kann nicht herausfinden, was los ist? In der Testversion funktioniert alles, aber in der echten und der Demo-Version erhalte ich, wenn ich versuche, eine Bestellung zu öffnen, die Meldung "Error 0". GetLastError() gibt "0" zurück, was keinen Fehler bedeutet. Was bedeutet das?
 
Leo59:
Ich kann nicht herausfinden, was los ist? In der Testversion funktioniert alles, aber in der echten und der Demo-Version erhalte ich, wenn ich versuche, eine Bestellung zu öffnen, die Meldung "Error 0". GetLastError() gibt "0" zurück, was keinen Fehler bedeutet. Was bedeutet das?

Das bedeutet, dass es so im Code steht. Wenn es Sie stört, korrigieren Sie es bitte.
 
evillive:

Es steht im Code, wenn es Sie also stört, sollten Sie es korrigieren.

Was muss ich tun, wenn sich die Bestellung nicht öffnen lässt?