Are there any market data providers that provide a query language?
You can give YQL a try. I'm not sure it can do the query you want, but for example you can do: (try it here) And this best thing about it - it's free.
Bloomberg Professional seems to be very popular. It provides any kind of data you can imagine. Analysis is a subjective interpretation of the data. "What do I mean by infrastructure? Well, if you're doing algorithmic trading, you have to have something monitoring data and making decisions on its own, presumably. How do you set that up? There are many ways, and some are better than others.  First is a problem of scale. If you're a newbie starting out with some small set of equity tick data, perhaps just trades for instance, you can whip together something that can handle that pretty easily. Check out http://www.marketdatapeaks.com/ though. That's your messaging rates you have to deal with once you go full data feeds direct from all the exchanges. 6.65 million messages/events per second. That's a lot. And if you fall behind, you lose your lunch.  Building a robust system that allows you to easily backtest and deploy strategies is crucial as well. The speed at which you're able to conduct the backtest matters a lot. Doing that rapidly, and accurately is not easy. For a broad market-data handling algo design (and now, clearly, for very specific things you can design one that'll handle stuff better for that one corner case, but this is for general algo trading), optimally you have some sort of setup where you have a:  [feed handlers] -&gt; [tickerplant] -&gt; [mkt data subscribers/CEP] -&gt; [order management system] -&gt; [broker]   in this setup you have feed handlers that are taking the raw exchange feeds and pushing them to a consolidated tickerplant, where CEP subscribers can come through and sub to the data they want (perhaps I just want ES futures on one, and only want to arb CMCSA and CMCSK on another -- you dont want each CEP subscriber getting your full feed for all tickers all the time, its a waste). so more or less, each independent strategy is its own subscriber to the tickerplant, taking whatever data it wants and only that data (could be ""give me all the trades and quotes for all nasdaq stocks, but not book depth"" for instance).  your CEP does whatever maths it has to do to figure out trading decisions, and when it does, it sends it to your order management system which does your risk checks, etc (""do you have enough money to place this trade?"" ""do you already have a position in this?"" ""are you trading against yourself?"" ... million other things). your OMS knows how to talk to your broker/directly to the exchange depending on your setup. Assuming all your risk checks pass, off the order goes to the exchange, and it deals with the fill msgs, etc.  Now, as far as speed is concerned - try to do all of this at 6.5 million events/second. It's hard. Some strats/cep subscribers will run faster than others, some are slower, some need to keep a full book to work while some work on just trades. Your OMS depending on if youre using only market data sources may need to keep its own book to place orders on behalf of your subscribers if they lack information about various markets (think all the twitter trading bots these days for instance), etc.  If you look back at the above setup as well, you'll notice some interesting things. [tickerplant] -&gt; [cep subscriber] portion can stay the same for live trading or backtesting. This is huge. The only thing that changes here for backtesting is that if you're trying to backtest, you can take historical data (query it out of your hopefully column-store database) and push it into your tickerplant rather than having it come from a live feed through the feed handler. Your tickerplant and cep subscriber will never know the difference, so you can use the same exact code for backtesting as you can for live. On the other end, you obviously cant send historical orders to your live broker, so you need to code a simulated OMS that does the backtest simulation (another huge piece of software to code that is hard to do well). But, for backtesting, your setup is staying largely the same except those two end pieces. This means that testing/deving/deploying strats can be pretty rapid, and uses the same code base for live and historical, which helps you eliminate bugs and have to code everything twice.  Backtesting design: [historical mkt data db] -&gt; [tickerplant] -&gt; [mkt data subscribers/CEP] -&gt; [order management system simulator/backtester]  These are just a few of the many problems that you hit when trying to dev good infra. There are like a million more. Point was simply, it's complicated. And C++ is a good lang. I use a wide variety of languages depending on exactly whats going on and how fast the code needs to be. With a proper tickerplant design, youre using some ipc protocol so a subscriber can be coded in any language. Check out http://www.zeromq.org/ -- thats an excellent piece of software to use to make a tickerplant out of, think they even have a design for one in the docs if I recall. With that, your CEP subscribers can be in any language - perhaps pure C if you need the speed, perhaps .NET or Java if you dont (check out http://esper.codehaus.org/ for a Java implement of a CEP subscriber, nEsper for the C# port of that I believe). But I use C, C++, C#, python, R, x86 asm for a few very minor things, and a lang or two I can't mention here." Every student has a different level of understanding and the sense of languages, so there is different level of curriculum for the students according to their different levels of learning. Our learning institute can provide you the required atmosphere so you can adapt this language easily and within the least possible time. "&gt; Lol. Americas are two continents. How many times do I have to educate you?   No, you said America is continents. You are just being weirdly semantic and also failing to distinguish between North and South America. They are not both collectively called America. Nobody groups 2 continents together like that. It's like trying to group Europe and Africa together.  There is nobody who says this. You cannot ""educate"" me on this because literally zero people aside from you think this way.   &gt;Beside that you still have not presented any data. All your points have been invalidated and best you can do is change topics over and over.  What data would you like? America being increasingly protectionist and the stock market being at an all time high?   https://www.cnbc.com/2017/07/26/us-stocks-boeing-earnings-fed.html  I already used your own data against you so in a way that is me using data and you've presented none.  &gt;Still could not address my points about Argentina, Canada, US and etc.  What point? I said Canada was protectionist and Canada is in the top to protectionist countries in the list *you provided.* We have a heavy investment in our own companies, a lot of my tax dollars go to that in fact. Canada is one of the most protectionist countries on the planet. Against my wishes, by the way, but it is the way it is.  &gt;Btw love your fake data and facts. I guess that's how you get cucked so hard to begin with  Cucked? By what? My own facts? What? You sound retarded right now.  &gt;LOL. Chart says tarrif of 10 big countries. Not 10 highest Tarrif. LOLOLOL.  Okay so provide a graph that shows the 10 highest tariffs.  You know what this weird edit of yours tells me?   **YOU DID NOT EVEN LOOK AT YOUR OWN LINK WHEN YOU SENT IT.**   You are just reading it now. So which one is it? Either the graph proves me right or it proves nothing at all. Either way, you fucked up. This is really, really funny.  &gt;Best to stay in your safe space and keep getting cucked.  Ugh, you don't see how embarrassing you sound, do you? Why would someone be cucked in a safe space? Are you saying *this* is a safe space? This sub is very clearly anti-Trump. You don't know what these words or phrases mean.  &gt;I wasn't being homophobic. I called you for what you are. That's your choice. No shame. Keep doing what you do and be Putins holster  Why do you think about cocksucking so much?" You can use Google Finance Stock Screener for screening US stocks. Apparently it doesn't have the specific criterion (Last Price % diff from 52 week low) you are (were!) looking for.  I believe using its api you can get it, although it won't exactly be a very direct solution. It looks like a lot of different industry/sector overview reports from various investment banks or other research providers. A lot of people on here don't have access to their portals and aren't used to coming across research like this. The organized nature of this makes it pretty convenient. well there are many papers on power spot price prediction, for example. It depends on what level of methodology you would like to use. Linear regression is one of the basic steps, then you can continue with more advanced options. I'm a phd student studying modelling the energy price (electricity, gas, oil) as stochastic process. Regarding to your questions: 1. mildly speaking, it's really hard, due to its random nature! (http://www.dataversity.net/is-there-such-a-thing-as-predictive-analytics/)  2. well, i would ask what kind of measure of success you mean? what level of predicted interval one could find successful enough? 3. would you like me to send you some of the math-based papers on? 4. as i know, the method is to fully capture all main characteristics of the price. If it's daily power price, then these are mean-reversion effect, high volatility, spike, seasonality (weekly, monthly, yearly).  Would you tell me what kind of method you're using? Maybe we can discuss some shared ideas? Anna Many exchanges trade the same securities.  An order may be posted to a secondary exchange, but if the National Best Bid and Offer data provider malfunctions, only those with data feeds from that exchange will see it. Only the data provider for the primary exchange where a stock is listed provides the NBBO. Missing orders are very common with the NBBO data providers.  NASDAQ's order consolidator has had many failures over the past few years, and the data provider's top executive has recently resigned. Brokers have no control over this system.  A broker may be alerted to a malfunction by an accountholder, but a broker may only inform the relevant exchange and the relevant data provider.