Obtention de valeurs d'intérêt ouvert ne concernant pas la barre actuelle. - page 10

 
Pourquoi faites-vous cela en premier lieu ?
 
prostotrader:
Pourquoi faites-vous ça ?

Je compare deux indicateurs sur les instruments d'échange :

  1. la différence entre le volume des ordres d'achat à ce moment-là et le volume des ordres de vente à ce moment-là, avec
  2. volume total des positions ouvertes
c'est-à-dire que j'attache ces deux indicateurs au graphique de l'instrument d'échange.

 
Karputov Vladimir:

Je compare deux indicateurs sur les instruments d'échange :

  1. la différence entre le volume des ordres d'achat à ce moment-là et le volume des ordres de vente à ce moment-là, avec
  2. volume total des positions ouvertes
C'est-à-dire que j'attache ces deux indicateurs au graphique de l'instrument d'échange.

C'est clair, mais à quoi servent ces deux tableaux ?

Qu'allez-vous faire d'eux ?

 
prostotrader:

C'est compréhensible, mais à quoi servent ces deux graphiques ?

Qu'allez-vous faire d'eux ?

Il y a deux réponses ici (vous pouvez les considérer dans le concept de AND, OR, OR OR- généralement à votre convenance) :

  1. intérêt purement académique
  2. Gagner de l'argent à la bourse :)

 
Karputov Vladimir:

Il y a deux réponses ici (vous pouvez les considérer en termes de ET, OU, OU - généralement à votre convenance) :

  1. intérêt purement académique
  2. Pour gagner beaucoup d'argent grâce à l'échange :)

Le temps que vous obteniez vos données dans la fonctionOnCalculate, vous aurez perdu votre pantalon !
 
prostotrader:
Le temps que vous obteniez vos données dans la fonction OnCalculate, vous aurez perdu votre pantalon !
Vous ne comprenez pas : j'ai des indicateurs et le but de l'indicateur est la visualisation. Dans ce cas, il n'est pas nécessaire d'avoir un verre excessivement "nerveux". Je dis plus - le verre est même indésirable ici.
 

Impossible d'en capturer davantage, car les relevés des indicateurs sont réinitialisés lorsque la connexion est interrompue :

Captures d'écran de la plateforme de négociation MetaTrader

RTS-9.16, M1, 2016.09.12

JSC ''Brokerage House ''OTKRYTIE'&#39 ;, MetaTrader 5, Real

Corrélation entre la direction de la tendance RTS-9.16, le volume total des positions ouvertes et la différence entre le volume des ordres d'achat en ce moment et le volume des ordres de vente en ce moment.

RTS-9.16, M1, 2016.09.12, OTKRYTIE Brokerage House, MetaTrader 5, Real


 

Pour l'indicateur Open Interest j'ai introduit une petite modification : maintenant, après le premier démarrage, si prev_calculate==0, l'indicateur ne réinitialisera pas ses tampons d'indicateurs. Qu'est-ce que j'obtiens : par exemple, vous attachez un indicateur à un graphique, l'indicateur fonctionne pendant un certain temps et soudain prev_calculate==0 (peut-être qu'il y a eu un échec de connexion, ou quelque chose s'est passé avec l'historique) - dans ce cas, l'indicateur ne réinitialisera pas ses tampons d'indicateur et il continuera à fonctionner comme si rien ne s'était passé.

Mise en œuvre :

dans la zone de déclaration des variables globales du programme, il y a une variable"StartDate" :

double         BufferMinDown[];
//---
datetime       StartDate=0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()

ensuite, au premier démarrage (à prev_calculated==0), la valeur de la variable "StartDate" est vérifiée : si sa valeur est inférieure à D'2015.01.01 00:00' - il s'agit du premier démarrage de l'indicateur, et la variable "StartDate" est affectée à la dernière heure connue du serveur

   if(prev_calculated==0)
     {
      Print("prev_calculated==0, StartDate=",StartDate);
      if(StartDate<D'2015.01.01 00:00')
        {
         StartDate=TimeCurrent();
        }
      else
        {
         return(rates_total);
        }
     }

sinon, il renvoie simplement "taux_total".

Dossiers :
 

J'ai une autre question concernant l'utilisation des constantes SYMBOL_SESSION_SELL_ORDERS_VOLUME et SYMBOL_SESSION_INTEREST. Lors de l'utilisation de l'indicateur posté dans ce fil, les données sur ces constantes sont plongées, évidemment pour tester leur utilisation sur l'historique vous devez créer un Expert Advisor. Lorsque l'on reçoit ces constantes via SymbolInfoDouble(Symbol(),SYMBOL_SESSION_BUY_ORDERS_VOLUME) pas dans OnCalculate() la sortie est nulle.

Personnellement, je veux prendre un moyen simple sans trop compliquer le code. Peut-on l'obtenir seulement pour l'indicateur et respectivement seulement dans OnCalculate(), et on ne peut pas l'obtenir sur l'historique, puisque les données ne peuvent être obtenues que pour la barre courante ?

Veuillez répondre dans ce sujet et ne déplacez pas le message, car il est impossible de trouver la réponse plus tard, d'autant plus que la question est dans le sujet.
 
Je pense avoir compris la réponse à ma question et le titre du sujet, j'ai exécuté l'EA en temps réel, tout fonctionne sur l'historique non. Ainsi, la question de savoir comment obtenir les valeurs de l'OI et le volume des ordres d'achat/de vente sur l'historique est répondue - pas moyen....