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

 
Zhunko:
Die Bibliothek.
Beispiele im Testskript.

Vielen Dank, Vadim :) Ich verstehe die Richtung. Ich möchte es in MQL4 ohne dll implementieren.

 
Barbarian:

Vielen Dank, Vadim :) Ich verstehe die Richtung, ich möchte es in MQL4 ohne dll zu implementieren.

Das wird nicht funktionieren.
 

double bb_up0=iBands(NULL,0,bb_p,bb_dev,0, bb_ap,MODE_UPPER,0);

double bb_lo0=iBands(NULL,0,bb_p,bb_dev,0, bb_ap,MODE_LOWER,0);

//--- Meine Herren, Bollinger Bands, mittlere Linie, unten, sind das alles richtige Entscheidungen oder gibt es auch falsche? In MT5 ist das Problem der Mittellinie gelöst, in MT4 habe ich es nicht gesehen.

Wenn Sie mit dem Alert-Skript prüfen, sind die Ergebnisse dieselben, aber trotzdem?

double bb_bs0= (bb_up0+ bb_lo0)/2;

double bb_bs0= iMA(NULL,0,bb_p, 0,0,bb_ap, 0);

double bb_bs0= iBands(NULL,0,bb_p,bb_dev,0, bb_ap,MODE_MAIN, 0);

double bb_bs0= iBands(NULL,0,bb_p,bb_dev,0, bb_ap,0, 0);

 
Zhunko:
Das wird es nicht.

Ja, ich habe bereits festgestellt, dass es ohne eine DLL nicht funktioniert.

 
rosomah:

double bb_up0=iBands(NULL,0,bb_p,bb_dev,0, bb_ap,MODE_UPPER,0);

double bb_lo0=iBands(NULL,0,bb_p,bb_dev,0, bb_ap,MODE_LOWER,0);

//--- Meine Herren, die mittlere Linie der Bollinger Bänder, unten, sind das alles richtige Entscheidungen oder gibt es auch falsche? MT5 hat das Problem mit der Mittellinie gelöst, in MT4 habe ich es nicht gesehen.

Wenn Sie mit dem Alert-Skript prüfen, sind die Ergebnisse dieselben, aber trotzdem?

double bb_bs0= (bb_up0+ bb_lo0)/2;

double bb_bs0= iMA(NULL,0,bb_p, 0,0,bb_ap, 0);

double bb_bs0= iBands(NULL,0,bb_p,bb_dev,0, bb_ap,MODE_MAIN, 0);

double bb_bs0= iBands(NULL,0,bb_p,bb_dev,0, bb_ap,0, 0);

Hier ist der Hauptzyklus der BB-Konstruktion:

//--- main cycle
   for(i=pos; i<rates_total && !IsStopped(); i++)
     {
      //--- middle line
      ExtMovingBuffer[i]=SimpleMA(i,InpBandsPeriod,close);
      //--- calculate and write down StdDev
      ExtStdDevBuffer[i]=StdDev_Func(i,close,ExtMovingBuffer,InpBandsPeriod);
      //--- upper line
      ExtUpperBuffer[i]=ExtMovingBuffer[i]+InpBandsDeviations*ExtStdDevBuffer[i];
      //--- lower line
      ExtLowerBuffer[i]=ExtMovingBuffer[i]-InpBandsDeviations*ExtStdDevBuffer[i];
      //---
     }

Hier ist die Berechnung eines einfachen MA:

//+------------------------------------------------------------------+
//| Simple Moving Average                                            |
//+------------------------------------------------------------------+
double SimpleMA(const int position,const int period,const double &price[])
  {
//---
   double result=0.0;
//--- check position
   if(position>=period-1 && period>0)
     {
      //--- calculate value
      for(int i=0;i<period;i++) result+=price[position-i];
      result/=period;
     }
//---
   return(result);
  }
//+------------------------------------------------------------------+

Wie Sie sehen können, ist die zentrale Linie ein einfacher MA auf Close. Der Rest ist darauf aufgebaut. Ziehen Sie also Ihre eigenen Schlussfolgerungen.

SZZ: Als Broschüre für Ihre weitere Arbeit:

Sie stellen den Durchschnittswert wie folgt ein: double bb_bs0 = (bb_up0+ bb_lo0)/2;

Aber es ist besser, es so zu berechnen: double bb_bs0= (bb_up0+ bb_lo0)*0,5;

Schließlich ist die Multiplikation schneller als die Division.

 
artmedia70:

Hier ist der Hauptzyklus für den Bau einer BB:

Hier ist die Berechnung eines einfachen MA:

Wie Sie sehen können, ist die Mittellinie eine einfache MA auf Close. Der Rest ist darauf aufgebaut. Sie können Ihre eigenen Schlussfolgerungen ziehen.

SZZ: Als Broschüre für Ihre weitere Arbeit:

Sie stellen den Durchschnittswert wie folgt ein: double bb_bs0 = (bb_up0+ bb_lo0)/2;

Aber es ist besser, es so zu berechnen: double bb_bs0= (bb_up0+ bb_lo0)*0,5;

Schließlich ist die Multiplikation schneller als die Division.



1. zum Preis der Bollinger-Bänder IMHO...

 
TWAP (nicht VWAP) wer hat ihn berechnet? Wie wird sie berechnet? Ich verstehe nichts von den Erklärungen im Internet...
 
Barbarian:

Ja, ich habe bereits erkannt, dass es ohne eine DLL nicht funktioniert.


Begründen.
 

Mir ist jetzt etwas Seltsames aufgefallen. Es gibt eine Basisbibliothek, die andere Bibliotheken importiert. Hier ist ein Teil davon:

//+---------------------------------------------------------------------------------------------------------------------------------------+
//| Библиотека базовых функций.                                                                                                           |
//+---------------------------------------------------------------------------------------------------------------------------------------+
// ================================================== Включения и импорт внешних модулей =================================================+
#include <hoz_Base@Include.mqh>
//+---
#import "hoz_LoggingToAnyWere@library.ex4"
    void fWrite_Log (string fs_Txt);
    void fPrint (string fs_Text);
#import
//+---
#import "hoz_HandlingWithErrorS@library.ex4"
    bool fErrorHandling (int fi_Error, bool& fb_InvalidSTOP);
    void fReConnect();
    string fErrorToString (int fi_Error);
    string fErrorDescription (int fi_Error);
#import
//+---
#import "hoz_ReturningSomeInfo@library.ex4"
    string fGet_NameOP (int fi_Type);
    string fGet_NameTF (int fi_TF = 0);
#import

Wenn ich owl starte, das ich jetzt mit diesen Bibliotheken schreibe, sehe ich im Protokoll:

2013.11.23 16:15:51     2012.01.01 22:00  hoz_ReturningSomeInfo@library EURUSD,M5: loaded successfully
2013.11.23 16:15:51     2012.01.01 22:00  hoz_Base@Library EURUSD,M5: loaded successfully
2013.11.23 16:15:51     ExperT inputs: i_MAXSpread=50; i_Lot=0.1; i_KLot=2; i_SL=0; i_TP=10; i_Slippage=3; i_NumberOfTry=10; i_DistanceFromLastPos=10; i_TriggerForBU=25; i_PreservedProfit=5; TStop.Buy=70; TStop.Sell=10; TrailingStep=20; i_magic=3333021; 

Ich meine, dem Protokoll zufolge wurden 2 Bibliotheken geladen: hoz_ReturningSomeInfo@Libraryund hoz_Base@Library.

Aber diese Bibliotheken fehlen: hoz_LoggingToAnyWere@library.ex4, hoz_HandlingWithErrorS@library.ex4 in der Zeitschrift. Ist das so gewollt? Oder sollten alle hochgeladenen Bibliotheken in der Zeitschrift aufgeführt werden?

 
Integer:

Begründen.

dll von winapi zumindest. um Zeichen an das Fenster zu senden