![]()
The SortWizard ®
Stock Screening Software
SortWizard Plus Reference Center
Field ID List (FID) Definitions
These are lists of possible fields available from your search via your RealTick datafeed. The list will change on a continuous basis as new fields are added. We will try to keep it as updated as possible. You can see all the fields that are available by browsing though the Add Fields tab in the SortWizard's Parameters Setup window. Look in the Available Fields and check out the different Servers, Tables and Sub-Types.
Since the files are rather large (Word file is 200+ pages), we suggest that after unzipping the file, you open the unzipped file in WordPad or a word processing application like Word so you can do a text search for the field(s) you are interested in locating. Some of the fields listed may not be available from you datafeed supplier and therefore will not be available for searches.Download Jan 2001 FID text file
You can select from a variety of fields from the RealTick server as well as use the SortWizard's historic database to create very unique searches of your own that suit you particular trading style. These fields can also be used in combination with formulas and limits enabling you to create searches found in a many of the most popular trading reference books. Then, using the criteria you have set, merge historic analysis within real-time information to automatically generate lists of stocks that are potential trading candidates.
The SortWizard Database fields are located in two tables. Those tables are: "TODAY" and "HISTORIC". The TODAY table contains data and calculations that are as of the previous day's close. The HISTORIC table contains selected fields from TODAY table that are prior to the previous day and are denoted for preceding days with a "-1,-2....-10 and etc.
Click Here for definitions of the SortWizard Server data fields.
SortWizard Database update completion time: 6:30 Central Standard Time (USA). The end of day data update is normally completed every trading day at the same time. End of day scans can be run AFTER the 6:30 PM update completion time.
In the past the SW database was updated at 4:00PM CST. We have moved back the update start time to 6:30 EST to correspond to when Instanet closes for trading. The reason for this change in start time is because the Nasdaq datafeed keeps recording trade volume until that time even though the Last Trade reflected is at 4:00EST. This change will make the Hist Vol figures and average calculations tie out with what you get from RealTick as they are using the Nasdaq datafeed.
Additional historic data fields will be added upon request.
To request additions; email: Add Historic Data with "Add Database Field" in the subject line.Formulas and Limits
This is a big one and probably one of the most important features of the Version 2 Plus upgrade. With the Plus are able to form Microsoft Excel type formulas and have them become part of your search. This is how you really set yourself apart from the crowd with your own unique set of qualifying conditions that you can create.
There are two aspects to this, Formulas and Limits.
Formulas are as the name implies, you define a formula and when a search is done your formula will be calculated for each stocks that makes to the screen. Your formula can be composed of many formulas and can get as complicated as you desire. Just as in Excel there are a number of built in formulas and even more that we will add in the future.
A formula must begin with an equal (=) sign.
Formulas can contain numbers such as 123, -123, 12 and any predefined or user-defined formula.
SortWizard supports all the arithmetic, Boolean and logical operators along with exponentiation(**) and percentage(%). See the sections below for more information on formulas and most built in formulas.
Limits are very similar to formulas except there is not column associated with them. If the value is positive the criteria will allow the symbol to show up on the screen otherwise it will not show up. Items are displayed based on a accumulation of these limits, all limits must be "True" for a symbol to show up like "=TRDPRC_1>10" is a good example of a Limit. Most limits will show up in the limits box on the left of the Limits dialog box, eventually they all will show up there. You can disable limits by un-checking the check box next to the limit. Disregard the "Formula" display for now.
For a tutorial creating a search with both Formulas and Limits go to the Learning Center
- Like in a spreadsheet such as Excel, a formula created in a spreadsheet are unique to that spreadsheet. Therefore, It is recommended that you create a "Master" search that contains all your formulas and edit that search and rename the search for subsequent search setups.
- In the Search Parameters Setup window, select the Formulas tab. Click the
button. Name your new formula in the blank FID (Field ID) Name field. For this example "ChgHi". Data Type should be set to Decimal/Fraction in most cases. Click the Accept button.
- In the Selected Fields list box, check the box in front of your new FID Name field "ChgHi". This will make the Field viewable in the Primary Criteria Available Fields list box. You will be setting the qualification criteria for the formula in Primary Criteria.
- Check the box just below the
that says: "When checked, double click... "
- Click just to the right of the "="
- Double click on "High" in the Selected Fields list box. That will insert "High_1" into the formula field. Type "-" to enter the minus operation. Now, double click on "Last Price" field. That enters TRDPRC_1 and completes the formula.
- Check you formula by clicking on the
button. If there is an error it will tell you the nature of the error and its location in your formula.
- Uncheck the check the box just below the
that says: "When checked, double click... " to turn off the special inserting function.
- As in spreadsheets, once you move to another area (a cell in Excel) the formula is saved. The is no need to save at this point.
- Go to the Primary Criteria. Select ChgHi from the Available Fields list box. Go to the Search Criteria Setup box. Select Great than....... and enter Value 1 of 1. Add in any other criteria you would like. This will return stocks that are 1 point or more below their high of the day and meets the additional criteria you included.
- Now less say you would like to search for a percentage change from the high instead of the raw number.
- Click on the
and create a new formula named PctChgHi. Follow the steps above to create the formula except now select the fields to create the following formula: =ChgHi/TRDPRC_1
- Go to the Column Display Setup tab and in the Display Type field select "Percent (100%)". Then in Precision select "0.0".
- Go to the Primary Criteria. Select PctChgHi from the Available Fields list box. Go to the Search Criteria Setup box. Select Great than....... and enter Value 1 of 2. Add in any other criteria you would like. This will return stocks that have a 2% change or more below their high of the day and meets the additional criteria you included.
- Clicking
will delete the selected formula. Clicking
refreshes the formula calculation.
Special functions created specifically for the data feed
These special functions are to be used in creating formulas and limits.
- ISNEW() - This function identifies a new symbol added to the list from a scan. When a new entry arrives in the scan results display a result of "1" or "0". Simply sort the column in descending order to display all the new entrant symbols at the top of the list. A critical factor to consider is the definition of a new entrant. To set the definition, go to the Settings tab in Search Parameters Setup. In the Event Sounds section on the far right there is the "New Item" interval with a "New after X searches" caption. What this means is that the symbol will be reset after "X" number of consecutive earches that it no longer qualifies to the criteria of the scan. The default is 10. What the means is that once the symbol come up as a new entrant then it must no longer qualify for 10 consecutive scans, then on the 11th scan it would then be consider an new entrant candidate.
To use this function as described above. Go to the Formula tab in Search Parameters Setup. Click the Add button to create a new formula. Name it "NewStock" Click Accept. In the formula bar after the "=" type: "ISNEW()" in the blank bar. In the Selected Fields column you will find NewStock at the bottom of the list. Click the box in from of NewStock so the results will be displayed from your scan using this function. Run a scan. When you look for the results you will find them displayed is the last column to the right. You can move the column by left clicking on the column heading and clicking and holding the button down and dragging the column to the position of your choice. Right click on the column heading and set the Primary sort to "Descending". You can modify how the column is displayed in the Column Display tab in Search Parameters Setup.
1 = this symbol is new entrant the most recent search
0 = this item is not new entrant
Sample File (Find the column with "New Stock" heading to see the results - sort the column "descending" to display all newly qualifying symbols at the top of the list)
- MKTOPENRATIO This is a ratio expressed as a decimal starting at "0" (market open) and ending at "1" (market close) relating to the regular trading day that has transpired at the time of the search. For example, you can use this ration to create an automatically incrementing minimum volume criteria.
Sample File (Click to "Limits" tab in Parameter Setup to see limit construction for a minimum volume of 20,000 shares at the open increasing to 500,000 by the end of the day).MKTOPENRATIO() - automatic and universal time zone start and stop times for regular trading hours.
MKTOPENRATIO(1) - eastern time zone (USA) start and stop times
MKTOPENRATIO(2) - central time zone (USA) start and stop times
MKTOPENRATIO(3) - western time zone (USA) start and stop times
MKTOPENRATIO(4) - mountain time zone (USA) start and stop times
MKTOPENRATIO (start_hr,start_min,stop_hr,stop_min) - user definable ratio; this will return the ratio of the market time that has gone by relative to the current time (users system clock) on a 24 hour clock basis. This method can be used if you are having trouble getting the correct results with any of the other alternatives above.- SEARCHID() - Identifies the last Search ID number that the symbol entered the display - returns the search number, each successive search is increased by one.
- SEARCHIDPREV() Identifies the previous search number that the symbol entered the display integer "1" - this is the LAST time this symbol came in.
- SEARCHIDOVERALL() - Current search number.
SEARCHIDFIRST() = The SEARCH ID number that the symbol first arrived as a ISNEW()=1
TOBOTTOM() (BOOL bMoveToBottom, BOOL bRemoveFromTop). Moves the new ISNEW()=1 symbol to the lower basket automatically.
- TOTOP() ( BOOL bMoveToTop, BOOL bRemoveFromBottom)
You can just have TOBOTTOM() and the two variable will default to
bMoveToTop = TRUE
bRemoveFromBottom = FALSE- MASTERCLOCK() = NEW YORK time no matter what time zone you are in, depending upon you system clock setting. WHOLE MINUTES only even though seconds are displayed.
ADDTOWATCH() - Change user attributes to watch.
ISWATCH() - Is symbol in the watch list.
In the Search Parameters Setup window there is a tab labeled "Search Diagnostics". To view search diagnostic analysis, check the box in front of "Include formula and limit stats". Then when you run a search the results are displayed in the large gray list box area below. Search Diagnostics is a powerful tool to help determine what elements (criteria, formulas and limits) of the search are eliminating symbols in the search you created . This is especially important when your searches are returning no results and you would like to figure what is the cause. To review a detailed explanation of a sample search: Click Here
Operator Precedence Definition
Operator Precedence Definition
- % 14 Percent
- ** 13 Exponentiation
- + 12 Plus
- - 12 Minus
- ~ 12 Bitwise complement (integer)
- ! 12 Logical not
- * 11 Multiplication
- / 11 Division
- % 11 Remainder (integer)
- + 10 Addition
- - 10 Subtraction
- << 9 Shift left (integer)
- >> 9 Shift right (integer)
- < 8 Less Than
- > 8 Greater Than
- <= 8 Less Than or Equal
- >= 8 Greater Than or Equal
- == 7 Equal
- != 7 Not Equal
- & 6 Bitwise And, or String Concatenation
- ^ 5 Bitwise Exclusive-Or (integer)
- | 4 Bitwise Or
- && 3 Logical And
- || 2 Logical Or
- ?: 1 Conditional
In formulas with more than one operator, the SortWizard evaluates operators in the order of precedence presented above, with highest precedence first. That is, AND/OR/NOT operators are evaluated after inequality operators in a logical expression, and multiplication/division operations are performed before subtraction/addition operations in an arithmetic expression. Operators at the same precedence level are evaluated from left to right. The precedence of operators can be overridden by using parentheses to explicitly specify the order of evaluation.
·The conditional operator returns its second operand if its first operand evaluates True (non-zero) and returns its third operand if it evaluates False, (zero). The conditional operator returns its second operand if its first operand evaluates True (non-zero) and returns its third operand if it evaluates False, (zero).
Mathematical Functions
- ABS(X) The absolute value of X.
- ACOS(X) The arc cosine of X.
- ASIN(X) The arc sine of X.
- ATAN(X) The 2-quadrant arc tangent of X.
- ATAN2(X, Y) The 4-quadrant arc tangent of Y/X.
- CEIL(X) The smallest integer greater than or equal to X.
- COS(X) The cosine of X.
- COSH(X)
- EXP(X) e raised to the X power.
- FACT(N) The value of N!.
- FLOOR(X) The largest integer less than or equal to X.
- FRAC(X) The fractional portion of X.
- GAMMA(X) The value of the gamma function evaluated at X.
- GRAND A 12th-degree binomial approximation to a Gaussian random number with zero mean and unit variance.
- INT(X) -The integer portion of X.
- LN(X) The natural log (base e) of X.
- LNGAMMA(X) The log base e of the gamma function evaluated at X.
- LOG(X) The log base 10 of X.
- LOG10(X) The log base 10 of X.
- LOG2(X) The log base 2 of X.
- MOD(X, Y) The remainder of X/Y.
- MODULUS(X, Y) The modulus of X/Y.
- PI The value of p.
- POLY(X, ...) The value of an Nth-degree polynomial in X.
- PRODUCT(X, ...) The product of all the numeric values in the argument list.
- RADIANS(X) Converts the angle expressed in degrees to radians ( ).
- RAND A uniform random number on the interval [0,1).
- ROUND(X, n) X rounded to n number of decimal places (0 to 15).
- SIGMOID(X) The value of the sigmoid function .
- SIN(X) The sine of X.
- SINH(X) The hyperbolic sine of X.
- SQRT(X) The positive square root of X.
- TAN(X) The tangent of X.
- TANH(X) The hyperbolic tangent of X.
- VECLEN(...) The square root of the sum of squares of its arguments.
Statistical Functions
- AVG(...) The average (arithmetic mean) of its arguments.
- FORECAST(...) Predicted Y values for given X.
- GMEAN(...) The geometric mean of its arguments.
- HMEAN(...) The harmonic mean of its arguments.
- MAX(...) The maximum of its arguments.
- MEDIAN(...) The median (middle value) of the range R1.
- MIN(...) The minimum of its arguments.
- MODE(...) The mode, or most frequently occurring value.
- MSQ(...) The mean of the squares of its arguments.
- PERMUT(S, T) The number of T objects that can be chosen from the set S, where order is significant.
- RMS(...) The root of the mean of squares of its arguments.
- SSE(...) The sum squared error of its arguments. It is equivalent to VAR(...)
- SSQ(...) The sum of squares of its arguments.
- STD(...) The population standard deviation (N weighting) of its arguments.
- STDS(...) The sample standard deviation (N-1 weighting) of its arguments.
- SUM(...) The sum of its arguments.
- VAR(...) The sample variance (N weighting) of its arguments.
- VARS(...) The sample variance (N-1 weighting) of its arguments.
Logic Functions
- FALSE The logical value 0.
- IF(X, T, F) The value of T if X evaluates to on-zero, or F if X evaluates to zero.
- TRUE The logical value 1.
Digital Logic Functions
- AND(...) 0 if any arguments are 0; 1 if all arguments are 1; otherwise -1.
- NAND(...) 0 if all arguments are 1; 1 if any arguments are 0; otherwise -1.
- NOR(...) 0 if any arguments are 1; 1 if all arguments are 0; otherwise -1.
- NOT(X) 0 if X=1; 1 if X=0; otherwise -1.
- OR(...) 0 if all arguments are 0; 1 if any arguments are 1; otherwise -1.
- XOR(...) -- 1 if any of the arguments are not 0 or 1; otherwise 0 if the total number of arguments with the value 1 is even; 1 if the total number of arguments with the value 1 is odd.
Date and Time Functions
- DATE(Y, M, D) The date value for year Y, month M, and day D.
- DATEVALUE(S) The corresponding date value for a given string S.
- DAYS360(S, E) The number of days between two dates, based on a 30/360 day count system.
- DAY(DT) The day number in the date/time value DT.
- EDATE(S, M) The date/time value representing number of months (M) before or after start date (S).
- EOMONTH(S, M) The date/time value representing the last day of the month M months after S, if M is positive, or M months before if M is negative.
- HOUR(DT) The hour value (0-23) of date/time value DT.
- MINUTE(DT) The minute value (0-59) of date/time value DT.
- MONTH(DT) The number of the month in date/time value DT.
- NETWORKDAYS(S, E[, H]) The number of whole working days, starting at S and going to E, excluding weekends and holidays.
- NOW The date/time value of the current system date and time.
- SECOND(DT) The seconds value (0-59) of the date/time value DT.
- TIME(H, M, S) The time value for hour H, minute M, and second S.
- TIMEVALUE(S) The corresponding time value for a given string value S.
- TODAY The date value of the current system date.
- WEEKDAY(D) The integer representing the day of the week on which the day D falls. 1 is Sunday, 7 is Saturday.
- WORKDAY(S, D[, H]) The day that is D working days after S, if D is positive, or before S, if D is negative, excluding weekends and all holidays specified as dates in range H.
- YEAR(DT) The year value of date/time value DT.
- YEARFRAC(S, E[, B]) The portion of the year represented by the number of days between start date (S) and end date (E).
Miscellaneous Functions
- CHOOSE(N, ...) The Nth argument from the list.