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

 
Vit1986:

Ich habe ein Demokonto eingerichtet und Kurse heruntergeladen (SP500, RTSI, SBER usw.). Einen trivialen Expert Advisor erstellt. Ich habe beschlossen, es zu testen. Aber es funktioniert perfekt auf SP500, aber es wird nicht mit SBER oder RTSI arbeiten (es öffnet eine Bestellung und dann beendet seine Arbeit) und zeigt keine Fehlermeldungen.


1) Es sieht mehr nach einem Skript als nach einem EA aus.

2. Überprüfen Sie den Geldbetrag auf der Demo, nachdem Sie zwanzig Lose bewegt haben.

3. Versuchen Sie OrderSend(Symbol(),OP_BUY,0.1,Ask,3,Bid-MarketInfo(Symbol(),MODE_STOPLEVEL)*Point,Bid+MarketInfo(Symbol(),MODE_STOPLEVEL)*Point);

4. Fügen Sie einen Fehlerbehandler hinzu, zumindest einen einfachen Alert (GetLastError());

5. SieheHandbuch.

 

Sie können auch auf Nummer sicher gehen und die Datentypen explizit angeben:

int cmd = OP_SELL;//торговая операция
double volume = 0.1;//лот
int slippage = 2;//отклонение ордера в пипсах
double stoploss = 0;//лось
double takeprofit = 0;//профит

int start(){
   OrderSend(Symbol(),cmd,volume,Bid,slippage,stoploss,takeprofit); 
  return(0);
}
 
GaNDarM:

Warum werden die Variablen in INIT() mit Null belegt? Wo liegt der Fehler oder wie kann man die Kauf- und Verkaufspreise Variablen außerhalb der Funktion start() zuweisen? Ich habe versucht, ihnen RefreshRates(); voranzustellen, aber keine Änderung :(

Hier ist der Code im Indikator init():

init()
{
    Print ("Ask = ", Ask, " | Bid = ", Bid);
}

und hier ist das Protokoll:

2013.03.19 17:49:27     i-PSI@Dash Board EURUSD,M15: Ask = 1.2932 | Bid = 1.293

Worüber "weinen" Sie?

 
gyfto:

GaNDarM

Die Branche

danke
 
TarasBY:

Hier ist der Code in der init() des Indikators:

und hier ist das Protokoll:

Worüber "weinen" Sie?


Ich "weine" darüber:

//---Ф-ЦИЯ init()----------------------------------------------------
int init()
  {
   RefreshRates();// обновляем данные по ценам
   UpL  =  Ask;     // Пик вверх изначально равен цене покупки
   DownL  =  Bid;     // Пик вниз изначально равен цене продажи
   Print ("СРАБОТАЛА Ф_ЦИЯ ИНИТ: DownL = ", DownL, " UpL = ", UpL);
   
   SetIndexStyle(0,DRAW_SECTION);     // стиль линии: отрезки между непустыми значениями
   SetIndexBuffer(0,ExtMapBuffer1);     // привязываем массив к номеру буфера
   SetIndexEmptyValue(0,0.0);     // указываем при каком значении не надо ничего рисовать
   //---
   
   return(0);
  }

und hier ist das Protokoll:

18:25:09 IndikatorZZ GBPJPY,Daily: INIT F_CY: DownL = 0 UpL = 0

 
Können Sie mir das sagen?
Wenn es einen Intraday-Handel gibt, bedeutet das, dass der Handel nicht auf den nächsten Tag übertragen wird und am Ende des Tages geschlossen werden muss?
 

Wie oft habe ich den Autopunkt schon benutzt, aber beim ersten Mal klappt es nicht.

Hier ist Init()

int init()
{
   if (Digits == 2 || Digits == 4)
     pt = Point;
   if (Digits == 1 || Digits == 3 || Digits == 5)
     pt = Point * 10;
 
  return (0);
}

Ich setze sie an einer beliebigen Stelle des Programms ein (in diesem Fall sogar beim Start des Experiments):

Print("ptStart = ", pt);
Print("PointStart = ", Point);

Die Funktion kehrt in das Protokoll zurück:

2013.03.19 19:55:35     2013.01.11 00:00  TradingByLine EURUSD.GI,M5: Point = 0
2013.03.19 19:55:35     2013.01.11 00:00  TradingByLine EURUSD.GI,M5: pt = 0

Wo ist die Logik?

 

Hallo. Können Sie mir bitte sagen, ob der Wert " >= " anstelle von " = ". Ich entferne das " <" oder " >" und nur " =" zu lassen, führt zu Fehlern beim Kompilieren.

Zum Beispiel: mein EA hat (Preis >= MA) und ich möchte (Preis = MA).NUR GLEICHWERTIG

 
artemka_1981:

Hallo. Können Sie mir bitte sagen, ob der Wert " >= " anstelle von " = ". Ich entferne das " <" oder " >" und nur " =" zu lassen, führt zu Fehlern beim Kompilieren.

Zum Beispiel: mein EA hat (Preis >= MA) und ich möchte (Preis = MA).NUR GLEICHWERTIG

==
 
TarasBY:
==

ICH DANKE IHNEN VIELMALS