Welcome Guest, please sign in to participate in a discussion. | Search | Active Topics | |
Registered User Joined: 6/28/2017 Posts: 68
|
Bruce, if you get a chance, please pass this along to the developers/architects. I just want to say how well-designed TC2000 is in terms of performance. Sure, there are occasional latency issues, especially in times of high volume and volatility. But I've been running it alternating on three different computers for 6-7 months while monitoring the amount of resources it uses. TC2000 is the most consistent and least invasive of the online programs I use daily. It's amazingly compact and responsive for all that it accomplishes. The load balancing between servers and desktop is nicely handled. I really appreciate that even though it's a little quirky and has a feel like a house that's been added to over the years, the overall drain on my systems is a lot less than it could be. Thanks, from me to the development gang!
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
Thank you for your feedback. It has been passed along to development.
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Registered User Joined: 4/8/2008 Posts: 37
|
Bruce,
I want to write a condition that only shows me stocks that have crossed their 200 day ma for the first time in the last 30days. An example is WLL back on 12/26/17 or TWLO just recently on 2/14
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
Given the dates, I am guessing the 200 day moving average is exponential.
XUP(C, XAVGC200) AND TrueInRow(NOT(XUP(C1, XAVGC200.1)), 30)
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Registered User Joined: 4/8/2008 Posts: 37
|
simple moving average
|
|
Registered User Joined: 4/8/2008 Posts: 37
|
Bruce,
I don't think that scan was true.. what I want is any stock that has recently crossed above its 200 day simple moving average in the last 30-days. The condition that you gave me did not produced TWLO which just recently got above it
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
Just change both instances of XAVGC200 to AVGC200 to change moving average type from exponential to simple.
XUP(C, AVGC200) AND TrueInRow(NOT(XUP(C1, AVGC200.1)), 30)
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
You didn't say anything about "recently" before. The above fomulas return true on the dates of the cross (so if you used the formulas in Custom PCF % True Indicators you would get spikes on those dates). That formula is going to be more complicated.
C > AVGC200 AND TrueInRow(C > AVGC200, 100) = TrueInRow(NOT(TrueInRow(C <= AVGC200, 30) = 30), 100)
Then again, that might not be what you want either. It will keep returning true for 100 bars as long as the closing price doesn't cross back down, so it won't currently return true for your other example. Do you want your other example (WLL) to still return true even though it has crossed back down?
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Registered User Joined: 4/8/2008 Posts: 37
|
I guess i don't mind if an example like wll still shows up even though it crossed back below the 200day
|
|
Registered User Joined: 4/8/2008 Posts: 37
|
The last condition did not work. all I want to know is all the stocks that the price history has crossed the 200 day for the 1st time in the last 30-days just like twlo just did 5 days ago. And if ACIA does it let's say tomorrow it will show up also.
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
Well if you want WLL to return true as well, then please try the following instead.
CountTrue(XUP(C, AVGC200) AND TrueInRow(NOT(XUP(C1, AVGC200.1)), 30), 100) > 0
In this case, recent is within the most recent 100 bars. You can change the 100 near the end of the formula to adjust the definition of recent.
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Worden Trainer
Joined: 10/7/2004 Posts: 65,138
|
TWLO returns true for the formula given in my Tuesday, February 20, 2018 3:18:04 PM ET post.
C > AVGC200 AND TrueInRow(C > AVGC200, 100) = TrueInRow(NOT(TrueInRow(C <= AVGC200, 30) = 30), 100)
So please clarify what you mean by, "The last condition did not work."
If you want it to keep returning true for say only 5 bars instead of 100 as long as the closing price stays above the 200, then change the 100 near the end to 5 instead.
C > AVGC200 AND TrueInRow(C > AVGC200, 100) = TrueInRow(NOT(TrueInRow(C <= AVGC200, 30) = 30), 5)
-Bruce Personal Criteria Formulas TC2000 Support Articles
|
|
Guest-1 |