I think that the following two sets of code will work for a Float Indicator
as per Wood's description. But it is not totally automatic;
some pre-work for each issue it is to be run against must be performed.
To simplify the development of the Float Indicator, I have been using primarily issues that are about 2 to 3 years old from their IPO's. This allows me to track all the volume data and to be reasonably sure that the Floathasn't changed much through time.
That is a problem with this indicator, the Float changes with time. So with an issue that has 10+ years like CSCO, if the indicator is run over the entire 10 + years of volume data using a current Float # of shares, the Float summation will be incorrect as you get to present time.
Also, when the indicator(s) as written sum over an issue for which all data is not loaded, the volume summation will be at an obvious ofset to pricemovement in recent time.
Both of these problems could be overcome with a manual pre-inspection that picks a "target" date from which to begin the scan.
For me this invloves running the indicator one time; locating a recent bottom; and finally setting the float calculation with the appropeiate date fromthe Options selector on the Open dialog panel. This cures the ofset problemalso. But I know of no way currently using Metastock to do this. Ideally, I would like to enter a begin date in the Input dialog and haveMetastock position its calculations from that point, but I no of no way todo this. Maybe someone out there does?
Do you have any thoughts in this area?
The code for the 2 versions I'm working on follows. The # 3 version basically gives the output in the form of a % of the current volume sum to the Float Volume as a histogram. The # 4 version is a line indicator. They both work as a ZIG-ZAG function, restarting when the Float is reached either at '0' or the unused portion of the volume on the day the Float Volume amount is reached.
The input might look strange, but as most float numbers are given as 9.10 M (Opti) or 6.88 B (CSCO) per Yahoo. This form of input allows an adjustment of of the Float entry form. The "Voume scaling factor" is because my data comes from 2 sources and one source transmits the volume as a x100 factor and the other transmits the Volume as the full number or as a x1 factor. For those whose data shows the total volume (and not the volume divided by 100) the correct setting would be x1 for the "Volume scaling factor".
Note further that I "tweak" the calculation on the day that the vlume causes the Float to have been exceeded. This simply is a subtraction thatallows the shares over the float to initiate the beginning of the next floatcount.