Welcome Guest, please sign in to participate in a discussion. | Search | Active Topics | |
Registered User Joined: 6/14/2013 Posts: 17
|
Dear PCF expert,
how to make a formula to find stocks where :
its RSI (14) is at the lowest level within the last 6 months
its moving average 50 is still trending up within the last 6 moths.
last day price should be greater than 5$
last day volume is more than 250K
i am using tc2000 version 12.3.4906.16077
Thank you
Djoko
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
If you were to use the plain RSI indicator without Wilder's smoothing, a Condition Formula for RSI14 being at its lowest point in 126 bars with the 50-period simple moving average of RSI having increased over 50-bars with price above $5 and volume above 250,000 shares for the current daily bar could be written as:
RSI14 = MIN(RSI14,126) AND RSI14.50 > RSI14.50.126 AND C > 5 AND V > 250000
PCF Formula Descriptions
Handy PCF example formulas to help you learn the syntax of PCFs!
It is not possible to create a simple Condition Formula if you are using the RSI - Wilder's indicator with Wilder's smoothing however. In this case, you would need to create the Conditions from the chart and then include all of the Conditions in the same EasyScan.
Create Conditions from Your Chart
Building a Scan with Multiple Conditions
You would need to add a 50-period moving average and 126-period Donchian Channels to the RSI. Then create a Condition for RSI being below the Lower Donchian Channels and another Condition for the 50-period moving average of RSI to be moving up with the Period of the moving up Condition set to 126-bars.
You would include both of these Conditions in the EasyScan as the following daily Condition Formula:
C > 5 AND V > 250000
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Registered User Joined: 6/14/2013 Posts: 17
|
Thank you Bruce, you are very good... :)
now what is the formula to find stocks that yesterday the closing price is lower than its open price?
thank you
Djoko
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
The follow Condition Formula should use a Daily time frame:
C1 < O1
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Registered User Joined: 6/14/2013 Posts: 17
|
sorry, is it C1<o1 ?
and if open today is lowest than yesterday high is O<H1 ?
thank you
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
Yes, it is C1 < O1 and yes, the current open being lower the high of the previous bar would be:
O < H1
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Registered User Joined: 6/14/2013 Posts: 17
|
Thank you Bruce,
now about On Balance Volume OBV. what is the formula to find stock with OBV reach its highest value at certain present time during trading day? if for stock price i already can find it.. its C=H right? but for obv, how to do it?
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
You are correct that thet daily Condition Formula C = H would mean that price is currently at its highest point during the current trading day.
Interestingly enough OBV would also be at its highest point in the day when the Daily Condition Formula C > C1 AND C = H is true. But it could also be at its highest point when C > C1 AND C <> H. In addition, C = H does not necessarily mean it is at its highest point if C <= C1. That said, I cannot think of a generalized way to determine if OBV is at its highest point in the day currently.
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Registered User Joined: 6/14/2013 Posts: 17
|
thank you Bruce,
what is the formula to just include stock in certain sectors? lets say only in metal mining & financial ?
regards
Djoko
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
There isn't a way to do that in a formula as there is no syntax in the Personal Criteria Formula Language for fundamentals. The PCF Formula Descriptions topic referenced above has a pretty comprehensive list of the syntax which is valid. If it isn't listed, it isn't in the language. While this doesn't mean you can't create indicators not listed, you have to be able to create them using the syntax which is.
The only way to limit sectors is to use an EasyScan. Then you can used the component WatchList for the desired main industry group or sub-industry group as the List to Scan in the EasyScan.
Building a Scan with Multiple Conditions
If you want to all more than one sector, you would need to create a Personal WatchList containing all of the symbols in the desired sectors and then use that Personal WatchList as the List to Scan for the EasyScan.
Copying Symbols to Personal WatchLists
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Registered User Joined: 6/14/2013 Posts: 17
|
yes i know about that. i just thought perhaps you know how to create filter for some sectors only. ok thank you very much Bruce. you really have a good knowlege on this and been very helpfull :)
|
|
Registered User Joined: 6/14/2013 Posts: 17
|
Dear Bruce,
how to make scan to find stocks where yesterday its daily OBV , stoc(12,5) and +DI15 moving up ?
thank you
Djoko
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
The easiest way would be to add the indicators to the chart, adjust their settings as desired and then click on them and select Create Scan Condition to create conditions for Moving Up (I'd choose Net set to 0). Then add all three conditions to the same EasyScan as EasyScan Conditions.
You will in fact have to create the condition for +DI15 this way in order to be completely accurate. That said, a Condition Formula which makes a good approximation of this which should be correct most of the time could be written as the following of the Stochastic is simple:
C > C1 AND V > 0 AND STOC12.5 > STOC12.5.1 AND H > H1 AND H - H1 > L1 - L
Or as the following if the Stochastic is exponential:
C > C1 AND V > 0 AND XAVG(STOC12,5) > XAVG(STOC12.1.1,5) AND H > H1 AND H - H1 > L1 - L
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Registered User Joined: 6/14/2013 Posts: 17
|
oh i see.. but i expect to be able to scan for stocks that have OBV not just one day ago, but also two days ago or three days ago moving up.. thats why i think i need the formula. can you provide me with the formula?
thx
Djoko
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
I'll start by pointing out that you generally do not need to have a formula just to determine if something happened a certain number of bars ago instead of the current bar.
You can add a 1-Period Simple Moving Average with the Offset setting adjusted to the number of bars ago for which you wish to check to the indicator of interest. Then click on the moving average instead of on the indicator to select Create Scan Condition. Once you are done creating the condition, you can remove the moving average and/or indicator from the chart.
Note that I did provide two formulas in my previous response. These formulas are designed to check all three requirements for the current bar. The difference in the formulas is entirely due to the Stochastic being simple (for the first formula) or exponential (for the second formula).
The first part of the formula checks for OBV to be increasing from the previous bar to the current bar:
C > C1 AND V > 0
This could also be written as:
OBV > OBV1.1
But the first version is more efficient than the second version.
The second part of the formula checks for the Stochastic 12,5 %K to be increasing from the previous bar to the current bar. In the case of a simple Stochastic, this is:
STOC12.5 > STOC12.5.1
And in the case of an exponential Stochastic, this is:
XAVG(STOC12,5) > XAVG(STOC12.1.1,5)
The last part of the formula is designed to check for the +DI15 to be increasing from the previous bar to the current bar. It is not possible to actually create a Condition Formula for this which is short and fast enough to be practical or post in the forums, but the Condition Formula given should match the results the vast majority of the time (note that the period of the +DI does not matter for this formula). The only time it should not match is if the Average True Range (which is the denominator for +DI) at a greater rate than the numerator.
H > H1 AND H - H1 > L1 - L
Creating versions for past bars is simply a matter of incrementing the bars ago parameters in the formulas the appropriate number of bars. So if you wanted to check the previous bar instead of the current bar for example, you would need to add 1 to all of the bars ago parameters. This would cause the OBV portion to become:
C1 > C2 AND V1 > 0
The Stochastics portion to become:
STOC12.5.1 > STOC12.5.2
Or:
XAVG(STOC12.1.1,5) > XAVG(STOC12.1.2,5)
And the +DI portion to become:
H1 > H2 AND H1 - H2 > L2 - L1
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Guest-1 |