Rejoindre la communauté
banner_forum
Devenez membre de la plus grande
communauté francophone sur le Forex
Partagez, échangez et apprenez en gagnant des crédits sur votre compte de trading

Carnet d'ordre ( soit DOM, tape reading), Bloomberg/ Reuters

  • Enzo22

    FX_Scalper, le 09/12/2013 dit :
    Non , le nombre d'ordre par prix n'est pas le market profile , le carnet d'ordre n'a rien à voir avec le market profile .


    Merci :)
  • JMarre — en réponse à FX_Scalper dans son message #87946

    Gracias! Espérons qu'un jour la plus part des brokers offriront le carnet d'ordre et qu'on trouvera aussi des explications plus compréhensibles sur le net. Sinon je vois qu'en ce moment une formation payante s'impose presque.
  • liva — en réponse à FX_Scalper dans son message #87946

    Non, l' idée du "Market Profile" c' est juste de représenter les choses différemment.
    En l' occurrence, tu peux profiler aussi bien le dom que le tape et te baser sur les volumes plutôt que sur le temps.
    Les systèmes automatiques de scalp profilent le DOM, donc les positions en attente qui peuvent encore être annulées.
  • Greg252

    Rien ne s'apprends sans une documentation solide. Or le Market profile ainsi que DOM/tape etc... Peu importe la methode... S'en faire une idee avec ce que l'on trouve sur le net c'est bien mais c'est pas suffisant. Ca a ete elaborer par des professionels et pour mieux comprendre et plus rapidement il faut s'adresser a eux donc acheter un livre ou participer a des cours.

    Etre trader c'est un metier. T'etudies pas la medecine chez toi en piquant par ci par la sur le net. C'est pareil tu payes l'unif pour le devenir et apprendre des bases solides. Je vois pas en quoi ce serait different avec ce metier.
    Modifié le 2013-12-10 03:52:21 par Greg252
  • _squAces_

    Encore une fois, payez-vous les conseils/services d'un Market Maker par exemple.

    Sinon, il y a toujours Sierra (en TPO pour illustrer) http://www.sierrachart.com/index.php?l=doc/doc_TPOVolProfileCharts.html
    C'est plus intuitif pour matérialiser les séquences: https://www.youtube.com/watch?v=83oiPjLg6Pg

    Jamais vous n'aurez de carnet d'ordre, au pire votre courtier vous donne des indicateurs, oscillateurs ou vous trouverez des indicateurs bestof trouvé sur le Web profitant de la naïveté des petits traders que nous sommes.
    Le marché est une bête de sang-froid, ce sont les «gros agresseurs» acheteurs et vendeurs qui bataillent les gros volumes directement inscrits dans un carnet d'ordre sous une colonne de volume global DOM et pré-matérialisé pour le Market Maker ou NDD par ex. sous des volumes de profits: Tape, Sale, FootPrint.

    Petit détail qui fera la différence, prenez le Footprint qui est une arme très puissante pour le scalpeur.

    Sinon, pour votre temps libre, voici la série scalp qui explique le phénomène:
    https://www.youtube.com/watch?v=vC9LRYSnzJU
  • _squAces_

    Oubliez les carnets d'ordres pour le marché des devises même si on peut l'utiliser à moins que vous le configurez votre Footprint sur Tick en travaillant seulement sur 3 UT . Il a plus d'impact sur les actions ou CFD, Cash Index.
    J'ai entendu parler de Ninjatrader sur ce forum, c'est la solution allégée mais ce n'est pas LE carnet d'ordre. Tu as l'équivalent pour MarketDelta c'est tout. Inexistant pour MT4 et 5 (Forexmatic pourrait confirmer s'il y a un rapport avec la sémantique du programmes).

    Avec le Footprint, vous aurez les avances et retards de fiabilité entre les agresseurs.
    L'objectif est de lancer un gros volume et serrer les stops un max pour quantifier le gain EV+, il faut aller très vite en tradant sur le graphique.

    Ami scalper, prenez le FOOTPRINT et demandez les services d'un MM/NDD.
    Modifié le 2013-12-10 07:26:05 par _squAces_ : orthographe
  • _squAces_

    Une vidéo illustrant le Footprint en (toute simplicité):
    https://www.youtube.com/user/marketdelta
  • _squAces_

    Je n'ai pas pu m'empêcher d'écrire un article à ce sujet. Le marché est vu comme un infiniment petit.
    http://squaces.wordpress.com/2013/12/10/linfiniment-petit/
  • JMarre — en réponse à _squAces_ dans son message #88010

    Merci pour les informations, je pense que le service de Marketdelta est payant, non?
    Personnellement j'ai opas compris comment s'en servir de la petite vidéo. Quand j'aurai plus de temps je lirai ton article.
    Enfin comme tu t'y connais, peux-tu le recommander, ou as-tu déjà fais des expériences fructueuses avec?
  • _squAces_

    Je connais Sierra en démonstration qui est payant à 45 par mois. Je le connais surtout par un employé chez Swissquote qui l'a testé de fond en comble. C'est celui qui est le plus recommandé. Pour Marketdelta je ne me prononcerait pas. Mais ce qui est certain, c'est que dans tous les cas les visualisations sont quasi pareil en terme de compréhension.

    Enfin, le Market Profile est clairement un métier, c'est la raison pour laquelle je parle de MM, NDD est consort et l'utilité d'un carnet en level2 pour les chevronnés.

    Je te propose dans un premier temps de checker tout ce que tu peux trouver sur le Footprint qui est le mot d'ordre.
    Et pour une première mise en bouche, je te conseille l'excellent livre de Dalton que tu trouveras chez Amazon au sujet du MP.

    L'exercice consiste dans un premier temps à comprendre comment fonctionne le poumon d'une devise à l'approche d'une annonce, pendant et après en une inspiration brève. On remarquera souvent un essoufflement de la liquidité, un piège qui incite aux acteurs à retirer leur volume pour finir au squeeze. Trois étapes qui se passent toujours de la même manière et qui sont vérifiables sous le Tape, ce second mot d'ordre qui permet de choisir le plus profitable qu'il soit entre l'achat ou la vente après les taux annoncés. On le remarque lors des zones d'annonces très rapprochées, lors d'événements qu'on ne peut expliquer.

    Il faut prendre le mécanisme du Market Profile comme un jeu de lego. Tout devient plus clair.
    Modifié le 2013-12-10 14:09:21 par _squAces_
  • _squAces_

    Pour l'article que j'ai rédigé, tu n'apprendras rien, c'est juste une mise en bouche pour démarrer gentillement.
  • arnaquebroker (invité)

    Tu peux taper virgin poc indicateur code mt4....
  • _squAces_

    C'est sur l'indicateur des HighLevel que tu proposes :)
    C'est un excellent exemple pour avoir une première approche en Day ou en Scalp.
    Modifié le 2013-12-10 17:29:27 par _squAces_
  • arnaquebroker (invité)

    Oui c'est cela mais j'aimerais bien avoir un indicateur qui te calcule le POC sur des bougies 5 min ou 15 min ou 1h (on choisirait) au lieu d'en avoir que sur du D1 des sessions précédentes...mais je ne trouve pas...
  • _squAces_

    Je crois que forexomatic est ton homme!
    Je te propose de t'enregistrer et te présenter dans la section de présentation, ce serait sympa pour échanger ;)

    Je te propose d'ouvrir un topic sur le sujet ici pour ta question du POC:
    http://www.forexagone.com/forum/metatrader/questions-reponses-sur-fonction-de-mt4-16627

    Autrement les indicateurs de volume Market et du volume Profil ne seraient pas inintéressant dans ton cas, tu peux les tester. Ainsi tu as au moins le VAL VAH à disposition du POC, il est opérationnel pour du 30 minutes plus idéal:
    http://www.earnforex.com/mt4-forex-indicators/MarketProfile.mq4


    Au cas où l'EA ne fait pas parti des indicateurs existant pour MT4.
    Au plaisir.
    Modifié le 2013-12-10 19:00:44 par _squAces_
  • arnaquebroker (invité)

    Je ne connais pas grand chose en programmation mais je pense qu'il serait utile d'avoir le POC sur de petites UT...
  • arnaquebroker (invité)

    Je ne trouve pas l'indicateur market profile qui ferait comme le virgin poc (qui te donne le POC et les extrêmes : j'ai comparer le chandelier en D1 et les extrêmes parce que je pensais que c'était le plus haut ou le plus bas...) mais sur des UT inférieurs telles qu m5 m15....ce serait intéressant de voir déjà que sur du d1 c'est pas mal mais peu d'opportunité pour les rebonds quand il s'agit de scalper...
  • _squAces_

    MarketDelta ou Sierra ne t'intéresserai pas?
  • arnaquebroker (invité)

    Oui mais il faut payer...j'ai regarder un peu le code pour le virgin poc, il faudrait changer le daily en hourly mais après je suppose qu'il y a pas de paramètres à changer...
  • arnaquebroker (invité)

    Qu'est ce qu'il faut changer dans ce code pour avoir du H1 voire m15....

    Code
    //+------------------------------------------------------------------+ //| MarketProfile_Virgin POC.mq4 | //| Copyright © 2006, V&K Software Corp. | //| | //+------------------------------------------------------------------+ #property copyright "Copyright © 2006, V&K Software Corp." #property link "" #property indicator_chart_window extern int Days_with_the_histogram = 1; // Êîëè÷åñòâî äíåé äëÿ ïîñòðîåíèÿ Ãèñòîãðàììû extern bool To_show_values =true;// âêëþ÷èòü çíà÷åíèÿ óðîâíåé extern int Range_percent =70; extern color Color_VirginPOCs =Green;// öâåò óðîâíÿ Virgin POC(Point of Control Formation) extern color Color_POCs =DarkGray;// öâåò óðîâíÿ POC òî÷êè ôîðìèðîâàíèÿ êîíòðîëÿ extern color Colour_in_a_range =MediumVioletRed;// öâåò âíóòðåííåãî äèàïàçîíà öåí extern color Colour_behind_a_range =RoyalBlue;// öâåò âíåøíåãî äèàïàçîíà öåí extern int Displacement_GMT =0; // ñìåùåíèå ìåòîê îòíîñèòåëüíî 0 áàðà extern bool To_build_today =false; // Ïîñòðîåíèÿ äëÿ òåêóùåãî äíÿ extern int Construction_step = 1; // Øàã ñåòêè ïîñòðîåíèÿ extern int Max_of_days_calculation = 90; // Ìàêñèìàëüíîå êîëâî äíåé äëÿ ðàñ÷åòà åñëè -1 âñÿ äîñòóïíàÿ èñòîðèÿ extern int Shift = 8; // ñìåùåíèå ìåòîê îòíîñèòåëüíî 0 áàðà // Ãëîáàëüíûå ïåðåìåííûå bool RedrawFlag; double Divider; datetime TimeZero=0; int CountPOC=0; string VirginPOC[]; string StartTime, EndTime; string PrefixName="MARKET_VIRGIN"; //string Comm; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators RedrawFlag=true; //---- switch(Period()) { case PERIOD_M1: Divider=(PERIOD_D1/5.0)/(PERIOD_D1/PERIOD_M1); break; case PERIOD_M5: Divider=(PERIOD_D1/5.0)/(PERIOD_D1/PERIOD_M5); break; case PERIOD_M15: Divider=(PERIOD_D1/5.0)/(PERIOD_D1/PERIOD_M15)-1; break; case PERIOD_M30: Divider=(PERIOD_D1/5.0)/(PERIOD_D1/PERIOD_M30)-2; break; case PERIOD_H1: Divider=(PERIOD_D1/5.0)/(PERIOD_D1/PERIOD_H1)-8; break; case PERIOD_H4: Divider=12; break; case PERIOD_D1: Divider=5.0/PERIOD_D1*2; break; case PERIOD_W1: Divider=5.0/PERIOD_W1; break; default: Divider=1; break; } if(StringFind( Symbol(), "#")!=-1||StringFind( Symbol(), "_")!=-1) { StartTime="13:30"; EndTime="19:59"; } else { StartTime="0:00"; // StartTime="13:30"; // EndTime="19:59"; EndTime="23:00"; } if(StringFind( Symbol(), "_ES")!=-1) Construction_step=10; return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { int i = 0; string ObjName; while(i < ObjectsTotal()) { ObjName = ObjectName(i); if(StringFind( ObjName, PrefixName)==-1) { i++; continue; } ObjectDelete(ObjName); } //---- return(0); } //+==================================================================+ //| Óìåíüøåíèå äàòû íà îäèí òîðãîâûé äåíü | //| Ïàðàìåòðû: | //| dt - äàòà òîðãîâîãî äíÿ áåç ó÷åòà âûõîäíûõ | //+------------------------------------------------------------------+ datetime decDateTradeDay (datetime dt) { datetime result; result=StrToTime(TimeToStr(StrToTime(TimeToStr(dt,TIME_DATE)+" 0:00")-PERIOD_D1,TIME_DATE)); while (TimeDayOfWeek(result)>5||TimeDayOfWeek(result)<1) result=decDateTradeDay(result); return(result); } //+==================================================================+ //| Ïîñòðîåíèå è ïðîâåðêà óðîâíåé POCs | //| Ïàðàìåòðû: | //| X - äàòà ñòàðòîâîãî äíÿ | //| Y - çíà÷åíèå óðîâíÿ | //+------------------------------------------------------------------+ void Draw_POCs(datetime X, double Y) { bool VirginFlag=true; color Color; datetime EndX; string name_line; int StartBar, EndBar; if(TimeDayOfWeek(X)==5) StartBar=iBarShift(NULL,PERIOD_M5,X+PERIOD_D1*60*3); else StartBar=iBarShift(NULL,PERIOD_M5,X+PERIOD_D1*60); EndBar=iBarShift(NULL,PERIOD_M5,StrToTime(TimeToStr(Time[0],TIME_DATE))); for(int i=StartBar; i>=EndBar; i--) { if(Y<iHigh(NULL, PERIOD_M5, i) && Y>iLow(NULL, PERIOD_M5, i)) break; } name_line=PrefixName+TimeToStr(X)+"POC"; if(i!=EndBar-1) { VirginFlag=false; Color=Color_POCs; EndX=iTime(NULL, PERIOD_M5, i); if(TimeToStr(EndX,TIME_DATE)==TimeToStr(TimeCurrent(),TIME_DATE) || TimeToStr(Time[0],TIME_DATE)==TimeToStr(X,TIME_DATE)) VirginFlag=true; } if(VirginFlag) { Color=Color_VirginPOCs; EndX=Time[0]+Shift*Period()*60; int size=ArrayRange(VirginPOC,0)+1; ArrayResize(VirginPOC,size); VirginPOC[size-1]=name_line; } if(ObjectFind(name_line)==-1) { ObjectCreate(name_line, OBJ_TREND, 0, 0, 0, 0, 0); ObjectSet(name_line, OBJPROP_BACK, false); ObjectSet(name_line, OBJPROP_RAY, 0); } ObjectMove(name_line,0, X, Y); ObjectMove(name_line,1, EndX, Y); ObjectSet(name_line, OBJPROP_COLOR, Color); if(!To_show_values && !VirginFlag) return; name_line = name_line+" LABLE"; if(ObjectFind(name_line) == -1) { ObjectCreate(name_line, OBJ_ARROW, 0, 0,0); ObjectSet(name_line, OBJPROP_BACK, false); } if(VirginFlag) ObjectSet(name_line, OBJPROP_ARROWCODE, SYMBOL_RIGHTPRICE); else ObjectSet(name_line, OBJPROP_ARROWCODE, SYMBOL_LEFTPRICE); ObjectMove(name_line, 0, EndX,Y); ObjectSet(name_line, OBJPROP_COLOR, Color); // Comm=Comm+TimeToStr(X)+" "+VirginFlag+" "+TimeToStr(iTime(NULL,PERIOD_M5,i))+"\n"; } //+==================================================================+ //| Ðàñ÷åò è ïîñòðîåíèå ðûíî÷íîãî ïðîôèëÿ | //| Ïàðàìåòðû: | //| dt - äàòà òîðãîâîãî | //| StartTime - âðåìÿ îòêðûòèÿ ñåñèè | //| EndTime - âðåìÿ çàêðûòèÿ ñåñèè | //| Draw - ôëàã ïîñòðîåíèÿ | //+------------------------------------------------------------------+ void DrawMarket(datetime dt, string StartTime, string EndTime, bool HDraw) { datetime GMT=Displacement_GMT*PERIOD_H1*60; datetime dt0=StrToTime(TimeToStr(dt,TIME_DATE)+" "+StartTime)+GMT; datetime dt1=StrToTime(TimeToStr(dt,TIME_DATE)+" "+EndTime)+GMT; int StartBar=iBarShift(NULL,PERIOD_M5,dt0); int EndBar=iBarShift(NULL,PERIOD_M5,dt1); int BarCount=StartBar-EndBar+1; double HighDay=iHigh(NULL,PERIOD_M5,iHighest(NULL,PERIOD_M5,MODE_HIGH,BarCount,EndBar)); double LowDay=iLow(NULL, PERIOD_M5, iLowest(NULL,PERIOD_M5,MODE_LOW,BarCount,EndBar)); int NumberOfPoints = (HighDay - LowDay) / (1.0*Point*Construction_step) + 1; // Çàïîëíåíèå ìàññèâà óðîâíåé è ïîèñê óðîâíÿ íà êîòîðîì öåíà íàõîäèëàñü ìàêñ. êîë-âî âðåìåíè int Count[]; ArrayResize(Count, NumberOfPoints); ArrayInitialize(Count,0); for(int i = StartBar; i >= EndBar; i--) { double C = iLow(NULL, PERIOD_M5, i); while(C < iHigh(NULL, PERIOD_M5, i)) { int Index = (C-LowDay) / (1.0*Point*Construction_step); Count[Index]++; C += 1.0*Point*Construction_step; } } int MaxLine = ArrayMaximum( Count, NumberOfPoints); // Âûâîäèì íà ýêðàí ëèíèþ POCs Draw_POCs(iTime(NULL, PERIOD_M5, StartBar), LowDay + 1.0*Point*Construction_step*MaxLine); if(!HDraw) { ArrayResize(Count, 0); return; } int tmp=Count[MaxLine]-Count[MaxLine]*Range_percent/100; int DownLine=0; int UpLine=0; for(i=0; i < NumberOfPoints; i++) { if(Count[i]>=tmp) { DownLine=i; break; } } for(i=NumberOfPoints-1; i > 0; i--) { if(Count[i]>=tmp) { UpLine=i; break; } } if(DownLine==0) DownLine=MaxLine; if(UpLine==0) UpLine=MaxLine; for(i = 0; i < NumberOfPoints; i++) { datetime StartX = iTime(NULL, PERIOD_M5, StartBar); double StartY = LowDay + 1.0*Point*Construction_step*i; datetime EndX = StartX+(Count[i]/Divider+1)*Period()*60; //Time[StartBar+Count[i]]; double EndY = StartY; string name_line = PrefixName+TimeToStr(dt0)+i; if(ObjectFind(name_line)==-1) { ObjectCreate(name_line, OBJ_TREND, 0, StartX, StartY, EndX, EndY); ObjectSet(name_line, OBJPROP_BACK, true); ObjectSet(name_line, OBJPROP_RAY, 0); } ObjectMove(name_line,0, StartX, StartY); ObjectMove(name_line,1, EndX, EndY); ObjectSet(name_line, OBJPROP_WIDTH, 1); if( i==MaxLine) { ObjectSet(name_line, OBJPROP_COLOR, Color_POCs); ObjectSet(name_line, OBJPROP_WIDTH, 3); } if(i>=DownLine&&i<=UpLine) { int shift=60; if(TimeDayOfWeek(dt0)==5) shift=60*3; if(i!=MaxLine)ObjectSet(name_line, OBJPROP_COLOR, Colour_in_a_range); if(i==DownLine) { datetime today=dt1;//StrToTime(TimeToStr(dt1+PERIOD_D1*shift,TIME_DATE)); double DownY=StartY; // Comm=Comm+TimeToStr(today)+" "+TimeToStr(today+PERIOD_D1*shift)+"\n"; name_line = PrefixName+TimeToStr(dt0)+"DOWN"; if(ObjectFind(name_line)==-1) { ObjectCreate(name_line, OBJ_TREND, 0, 0, 0, 0, 0); ObjectSet(name_line, OBJPROP_RAY, 0); } ObjectMove(name_line,0, today, StartY); ObjectMove(name_line,1, today+PERIOD_D1*shift, EndY); ObjectSet(name_line, OBJPROP_COLOR, Colour_in_a_range); } if(i==UpLine) { double UpY=StartY; name_line = PrefixName+TimeToStr(dt0)+"UP"; if(ObjectFind(name_line)==-1) { ObjectCreate(name_line, OBJ_TREND, 0, 0, 0, 0, 0); ObjectSet(name_line, OBJPROP_RAY, 0); } ObjectMove(name_line,0, today, StartY); ObjectMove(name_line,1, today+PERIOD_D1*shift, EndY); ObjectSet(name_line, OBJPROP_COLOR, Colour_in_a_range); } } else { ObjectSet(name_line, OBJPROP_COLOR, Colour_behind_a_range); } } /* name_line = PrefixName+TimeToStr(dt0)+"BOX"; if(ObjectFind(name_line)==-1) { ObjectCreate(name_line, OBJ_RECTANGLE, 0, 0, 0, 0, 0); ObjectSet(name_line, OBJPROP_BACK, true); ObjectSet(name_line, OBJPROP_RAY, 0); } ObjectMove(name_line,0, today, UpY); ObjectMove(name_line,1, today+PERIOD_D1*shift, DownY); ObjectSet(name_line, OBJPROP_WIDTH, 1); ObjectSet(name_line, OBJPROP_COLOR, Bisque); */ ArrayResize(Count, 0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int counted_bars=IndicatorCounted(); datetime dt, end_dt; //---- if(Period()>PERIOD_H4) return(-1); //Ïðîâåðÿåì ÒàéìÔðåéì åñëè áîüøå H4 âûõîäèì //---- dt=TimeCurrent(); if(TimeZero!=Time[0]) { double c=iClose(NULL,PERIOD_M1,1); c=iClose(NULL,PERIOD_M5,1); c=iClose(NULL,PERIOD_M15,1); c=iClose(NULL,PERIOD_M30,1); c=iClose(NULL,PERIOD_H1,1); c=iClose(NULL,PERIOD_H4,1); c=iClose(NULL,PERIOD_D1,1); c=iClose(NULL,PERIOD_W1,1); c=iClose(NULL,PERIOD_MN1,1); TimeZero=Time[0]; } if(!To_build_today) dt=decDateTradeDay(dt); else { DrawMarket(dt, StartTime, EndTime, true); dt=decDateTradeDay(dt); } if(RedrawFlag) { end_dt=StrToTime(TimeToStr(iTime(NULL,PERIOD_M5, iBars(NULL,PERIOD_M5)-1),TIME_DATE)); if(Max_of_days_calculation >= 1) end_dt=StrToTime(TimeToStr(iTime(NULL,PERIOD_D1, Max_of_days_calculation),TIME_DATE)); int i=1; while(end_dt!=dt) { if(i<=Days_with_the_histogram) DrawMarket(dt, StartTime, EndTime, true); else DrawMarket(dt, StartTime, EndTime, false); dt=decDateTradeDay(dt); i++; } } RedrawFlag=false; for(i=0; i< ArrayRange(VirginPOC,0); i++) { ObjectMove(VirginPOC[i], 1,Time[0]+Shift*Period()*60,ObjectGet(VirginPOC[i],OBJPROP_PRICE1)); ObjectMove(VirginPOC[i]+" LABLE", 0,Time[0]+Shift*Period()*60,ObjectGet(VirginPOC[i]+" LABLE",OBJPROP_PRICE1)); } // Comment(Comm); //---- return(0); } //+------------------------------------------------------------------+
    Modifié le 2013-12-11 16:09:41 par AliX : [code] [/code]