[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[amibroker] Re: Market Profile (look alike) in Amibroker



PureBytes Links

Trading Reference Links

I thought this would be a popular topic as I did futher research on 
market profile this weekend and was hoping that someone may have had 
a genuine interest in building on this program to create something 
that adds great value to amibroker trading tools.   

Any help would be great appreciated -  Thank you. 


--- In amibroker@xxxxxxxxxxxxxxx, "rf_mail1" <rf_mail1@xxx> wrote:
>
> Hello - I have this indicator from "Noname" that is currently in 
the 
> amibroker online library.   However,  I am hoping that this could 
be 
> improved to show Point of control, and to display the actual price 
> figure at which POC is.  Also, to show the points of control 
from "X" 
> number of prior days, and to be a shown as  a line (color red) in 
the 
> current intra day chart, along with a dynamic moving POC in real 
time 
> (color to be blue). 
> 
> I do not pretend to know all there is about Market profile, as I am 
> in the process of learning it, and was hoping that others may 
already 
> have done this programming and would like to share this.   Or 
perhaps 
> would like to build on this below. 
> 
> I did try to understand this coding and do it myself, but its 
beyond 
> my skills and therefore looking for the generosity of others.  
> 
> Thank you in advance.  Please let me know if I am out of line with 
> this request- it just seems it would be a valuable indicator to 
have.
> 
> 
> //Market Profile (by Noname) posted in amibroker online library)
> GraphXSpace = 5;
> SetChartOptions(0, chartShowDates);
> 
> //===========================
> 
> Den = Param("Density", 40, 10, 100, 10);
> ShowMP = ParamToggle("Show MP", "No|Yes");
> ShowVP = ParamToggle("Show VP", "No|Yes");
> StyleMP = ParamStyle("style MP", styleLine, maskAll);
> StyleVP = ParamStyle("style VP", styleLine, maskAll);
> 
> //===========================
> BarsInDay = BarsSince(Day() != Ref(Day(), -1)) + 1;
> 
> //===========================
> NewDay = Day() != Ref(Day(), 1) OR Cum(1) == BarCount;
> 
> //===========================
> Bot = TimeFrameGetPrice("L", inDaily, 0);
> Top = TimeFrameGetPrice("H", inDaily, 0);
> Vol = TimeFrameGetPrice("V", inDaily, 0);
> 
> //===========================
> 
> Range = Highest(Top-Bot);
> Box = Range/Den;
> VolumeUnit = Vol/BarsInDay;
> 
> for (k = 0; k < Den; k++)            // loop through each line 
> (price) starting at the Lowest price
> {
> 	Line = Bot + k*Box;
> 	detect = Line >= L & Line <= H;
> 
> 	if(ShowMP == True)
> 	{
> 		CountMPString = IIf(NewDay, Sum(detect, BarsInDay), 
> 0);
> 		CountMPString = Ref(ValueWhen(NewDay, CountMPString, 
> 0), -1);
> 		MpLine = IIf(CountMPString >= BarsInDay, Line, Null);
> 
> 		Plot(MPLine, "", colorRed, styleMP);
> 	}
> 
> if(ShowVP == True)
> 	{
> 		CountVPString = IIf(NewDay, Sum(detect*V, 
> BarsInDay)/VolumeUnit, 0);
> 		CountVPString = Ref(ValueWhen(NewDay, CountVPString, 
> 0), -1);
> 		VpLine = IIf(CountVPString >= BarsInDay, Line + 
> Box/4, Null);
> //		Plot()
> 		Plot(VPLine, "", colorBlue, styleVP);
> 	}
> }
> 
> Title = "{{NAME}} - {{INTERVAL}} {{DATE}} {{VALUES}} - \\c04 Market 
> Profile  \\c06 Volume Profile";
>



Content-Description: "AVG certification"
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.432 / Virus Database: 268.16.12/628 - Release Date: 1/15/2007 11:04 AM