MetaStock and MetaStock Professional, plugins and more!
Trade Oracle and Metastock plugins
Home |  Products |  Data |  Support |  Archives
Fri May 16th, 2008   


Free Newsletter!
We invite you to receive this free trader's resource. Your subscription will keep you up to date and informed, and entitle you to access our free area which contains many free MetaStock formulas!
 

Solutions for Traders
Shatterfield Commitments of Traders Data Service
Trade Oracle Trading software.
Stocks & Options trader solutions
Triangle Patterns solutions
TSAGroup has the best deals on MetaStock software!

Resources
Commodities futures contract specifications
Articles and newsletter Archives
Visit the TSA Group Bookstore!
Related financial websites

Google Search

SpyGlass Market Toolbox
Broad Market Functions and Custom Formulas

The Broad Market tool allows you to import calculated items into MetaStock (via the Paste Functions dialog), and also includes many pre-built custom formulas in MetaStock.

The pre-built custom formulas take the Broad Market functions and place them into a MetaStock custom formula.

BroadMarket Custom Formulas

Absolute Breadth Index

Abs( ExtFml( "Broad Market.AdvancingIssuesNumber")
- ExtFml( "Broad Market.DecliningIssuesNumber") )

Advance/Decline Line

PREV + ( ExtFml( "Broad Market.AdvancingIssuesNumber")
- ExtFml( "Broad Market.DecliningIssuesNumber") )

Advance/Decline Ratio

ExtFml( "Broad Market.AdvancingIssuesNumber")
/ ExtFml( "Broad Market.DecliningIssuesNumber")

Advancing - Declining Issues

ExtFml( "Broad Market.AdvancingIssuesNumber")
- ExtFml( "Broad Market.DecliningIssuesNumber")

BM Advancing Issues #

ExtFml( "Broad Market.AdvancingIssuesNumber")

BM Advancing Volume

ExtFml( "Broad Market.AdvancingIssuesVolume")

Arms Index

NYSEAdvDecI:= ExtFml( "Broad Market.AdvancingIssuesNumber")
/ ExtFml( "Broad Market.DecliningIssuesNumber") ;

NYSEAdvDecV:= ExtFml( "Broad Market.AdvancingIssuesVolume")
/ ExtFml( "Broad Market.DecliningIssuesVolume") ;

NYSEAdvDecI / NYSEAdvDecV;

Breadth Thrust Indicator

Mov( ExtFml("Broad Market.AdvancingIssuesNumber")
/( ExtFml( "Broad Market.AdvancingIssuesNumber")
+ ExtFml("Broad Market.DecliningIssuesNumber")),10,E)

BM Close Above MA %

MAPeriods := Input("Enter moving average periods", 1, 32000, 200);

ExtFml( "Broad Market.CloseAboveMAPercent", MAPeriods )

BM Close Below MA %

MAPeriods := Input("Enter moving average periods", 1, 32000, 200);

ExtFml( "Broad Market.CloseAboveMAPercent", MAPeriods )

Cumulative Volume Index

PREV + ( ExtFml( "Broad Market.AdvancingIssuesVolume")
- ExtFml( "Broad Market.DecliningIssuesVolume") )

BM Custom Data

ExtFml( "Broad Market.GetCustomData", PER_CLOSE_ABOVE_14D_MA.TXT)

BM Declining Issues #

ExtFml( "Broad Market.DecliningIssuesNumber")

BM Declining Volume

ExtFml( "Broad Market.DecliningIssuesVolume")

BM MA Above MA #

MAPeriods1 := Input("Enter first moving average periods", 1, 32000, 200);
MAPeriods2 := Input("Enter second moving average periods", 1, 32000, 200);
ExtFml( "Broad Market.MAAboveMANumber", MAPeriods1, MAPeriods2 )

BM MA Below MA #

MAPeriods1 := Input("Enter first moving average periods", 1, 32000, 200);
MAPeriods2 := Input("Enter second moving average periods", 1, 32000, 200);
ExtFml( "Broad Market.MABelowMANumber", MAPeriods1, MAPeriods2 )

BM McClellan Oscillator

NYSEAdvDec:= ExtFml( "Broad Market.AdvancingIssuesNumber")
- ExtFml( "Broad Market.DecliningIssuesNumber");

Mov(NYSEAdvDec,19,EXPONENTIAL) - Mov(NYSEAdvDec,39,EXPONENTIAL)

BM McClellan Summation

NYSEAdvDec:= ExtFml( "Broad Market.AdvancingIssuesNumber")
- ExtFml( "Broad Market.DecliningIssuesNumber");

PREV - ((10 * Mov(NYSEAdvDec,19,EXPONENTIAL)) + (20*Mov
(NYSEAdvDec,39,EXPON ENTIAL))) + 1000

BM New 250-day Highs #

ExtFml( "Broad Market.New250DayHighsNumber")

BM New 250-day Highs %

ExtFml( "Broad Market.New250DayHighsPercent")

BM New 250-day Lows #

ExtFml( "Broad Market.New250DayLowsNumber")

BM New 250-day Lows %

ExtFml( "Broad Market.New250DayLowsPercent")

BM New Highs - Lows Cumulative

PREV + (ExtFml( "Broad Market.New250DayHighsNumber")
- ExtFml( "Broad Market.New250DayLowsNumber"))

BM New Highs - New Lows

ExtFml( "Broad Market.New250DayHighsNumber")
- ExtFml( "Broad Market.New250DayLowsNumber")

BM New Highs/New Lows Ratio

ExtFml( "Broad Market.New250DayHighsNumber")
/ ExtFml( "Broad Market.New250DayLowsNumber")

BM Open-10 TRIN

NYSEAdvDecI := Sum(ExtFml( "Broad Market.AdvancingIssuesNumber"),10) / Sum(ExtFml
( "Broad Market.DecliningIssuesNumber"),10) ;

NYSEAdvDecV:= Sum(ExtFml( "Broad Market.AdvancingIssuesVolume"),10) / Sum(ExtFml
( "Broad Market.DecliningIssuesVolume"),10) ;

NYSEAdvDecI / NYSEAdvDecV;

BM Overbought/Oversold

Mov(ExtFml( "Broad Market.AdvancingIssuesNumber")
- ExtFml( "Broad Market.DecliningIssuesNumber"),10,EXPONENTIAL)

BM Unchanged Issues #

ExtFml( "Broad Market.UnchangedIssuesNumber")

BM Upside/Downside Ratio

ExtFml( "Broad Market.AdvancingIssuesVolume")
/ ExtFml( "Broad Market.DecliningIssuesVolume")

BM Upside/Downside Volume

ExtFml( "Broad Market.AdvancingIssuesVolume")
- ExtFml( "Broad Market.DecliningIssuesVolume")


BroadMarket functions

AdvancingIssuesNumber - the number of issues whose close today was greater than their close yesterday.

AdvancingIssuesPercent - the percent of issues whose close today was greater than their close yesterday.

AdvancingIssuesVolume - the total trading volume in all issues that advanced today.

DecliningIssuesNumber - the number of issues whose close today was less than their close yesterday.

DecliningIssuesPercent - the percent of issues whose close today was less than their close yesterday.

DecliningIssuesVolume - the total trading volume in all issues that declined today.

UnchangedIssuesNumber - the number of issues whose close today was equal to their close yesterday.

UnchangedIssuesPercent - the percent of issues whose close today was equal to their close yesterday.

UnchangedIssuesVolume - the total trading volume in all issues that were unchanged today.

New250DayHighsNumber - the number of issues whose closing price is greater than their highest high in the last 250 days.

New250DayHighsPercent - the percent of issues whose closing price is greater than their highest high in the last 250 days.

New250DayLowsNumber - the number of issues whose closing price is less than their lowest low in the last 250 days.

New250DayLowsPercent - the percent of issues whose closing price is less than their lowest low in the last 250 days.

CloseAboveMANumber - the number of issues whose closing price is greater than a moving average. The user specifies the moving average periods, both at the time of calculation in SpyGlass, and at the time of plotting in MetaStock.

CloseAboveMAPercent - the percent of issues whose closing price is greater than a moving average. The user specifies the moving average periods, both at the time of calculation in SpyGlass, and at the time of plotting in MetaStock.

CloseBelowMANumber - the number of issues whose closing price is less than a moving average. The user specifies the moving average periods, both at the time of calculation in SpyGlass, and at the time of plotting in MetaStock.

CloseBelowMAPercent - the percent of issues whose closing price is less than a moving average. The user specifies the moving average periods, both at the time of calculation in SpyGlass, and at the time of plotting in MetaStock.

MAAboveMANumber - the number of issues whose moving average is greater than a second moving average. The user specifies the moving average periods, both at the time of calculation in SpyGlass, and at the time of plotting in MetaStock.

MAAboveMAPercent - the percent of issues whose moving average is greater than a second moving average. The user specifies the moving average periods, both at the time of calculation in SpyGlass, and at the time of plotting in MetaStock.

MABelowMANumber - the number of issues whose moving average is less than a second moving average. The user specifies the moving average periods, both at the time of calculation in SpyGlass, and at the time of plotting in MetaStock.

MABelowMAPercent - the percent of issues whose moving average is less than a second moving average. The user specifies the moving average periods, both at the time of calculation in SpyGlass, and at the time of plotting in MetaStock.

GetCustomData - used to grab any data that's not included in the pre-defined calculations. A filename is specified. For example, the filename for the file that contains the percent of securities whose 50-day moving average is above the close would be PER50DMA_ABOVE_CLOSE.TXT. If you're not sure what the file name is, look in the Broad Market folder after the calculation is complete.