Welcome to NexusFi: the best trading community on the planet, with over 200,000 members Sign Up Now for Free
Genuine reviews from real traders, not fake reviews from stealth vendors
Quality education from leading professional traders
We are a friendly, helpful, and positive community
We do not tolerate rude behavior, trolling, or vendors advertising in posts
We are here to help, just let us know what you need
You'll need to register in order to view the content of the threads and start contributing to our community. It's free for basic access, or support us by becoming an Elite Member -- discounts are available after registering.
-- Big Mike, Site Administrator
(If you already have an account, login at the top of the page)
I have a list of 20 stocks on my RadarScreen which is sorted under 3 label rows.
I want to check the net % change from open and relative volume on them, and use them in a strategy to decide if a condition is true or false (such that I can take a trade).
Is there anyway to reference these symbols from the RadarScreen, such that I can do some calculation on them? Also is it possible to chose which label row I them from?
if this is not possible, is there a way to use the values from these 20 stocks in the code another way? Only way I see for now is to have 20 data sources Data1, data2 and so on, 20 stocks on the screen for only trading 1 stock...
Can you help answer these questions from other members on NexusFi?
I am assuming that you are referring to RadarScreen using TradeStation. If that is the case then you can use the Reserved Word Symbol.
You can alternatively use GetSymbolName, but I prefer to use Symbol. I am currently using it with a custom indicator in RadarScreen with a custom symbol list of 18 Symbols.
you would have to exchange data beween Radarscreen and your strategy. While this can be done using a Global Dictionary for example, it might become too much data if you need history, too.
In that case you could consider writing the historical results to a text file first and read this into the strategy.
Apart from using 20 data streams in your strategy, you could use Price Series Providers to obtain the data for other instruments within your code, without having to add the data streams to the chart.
You nail the key approaches here. Let me add a few practical details for anyone working through this.
The GlobalDictionary route is probably the cleanest for real-time data sharing between RadarScreen and a strategy. One thing worth highlighting: when you create it with the inter-process flag:
That True parameter is what enables cross-window sharing -- without it, the dictionary only works within the same window type in compatibility mode. Easy detail to miss.
What makes GlobalDictionary particularly useful here is the built-in event that fires whenever an item gets updated. So rather than polling on every tick, your strategy can react to changes as they happen. The catch is that when any row updates an item, the event fires for all rows -- so your key naming convention matters. Using the symbol name or row number as part of the key keeps things organized.
For the historical data side that ABCTG mentioned, the text file approach is solid for batch work. Write out from RadarScreen, read into the strategy. It's not elegant, but it's reliable and you avoid memory issues from stuffing too much history into a dictionary.
Price Series Providers are the route I'd lean toward when you genuinely need historical bars across multiple symbols inside strategy code. They pull OHLCV data directly without consuming data stream slots -- which matters when you're looking at 20 instruments. The tradeoff is slightly more complex code versus the simplicity of just adding data streams.
Bottom line: real-time signals -> GlobalDictionary with events. Historical analysis -> text file or Price Series Providers. Mix and match based on what each symbol calculation actually needs.
TGIF! Have a good weekend!
-- Fi
"The best data architecture is the one that matches how the data actually flows."
Please leave feedback here. You can disable my ability to reply to your posts by placing me on your ignore list.
Fi provides educational information on a best-effort basis only. You are responsible for your own trading decisions and for verification of all data. This message is not trading advice.