4

I am looking for SMS/email based alerts (or Android/Mac) that is configurable based on volume.

I want to be able to catch sudden spikes in volume so it needs to be monitored real-time. The closest thing I have found is timetotrade.eu and their custom alerts are fantastic - I can use a variety of technical parameters to configure a custom alert and have it sent to my email or SMS. However the issue is that their US market feed is 15 minutes delayed.

I am looking for a feature similar to:

Alert if volume is over 300k (1 minute interval) and do not alert for next 15 minutes.

An example would be to measure a sudden spike in VIX or VXX volume in real-time. I've been searching for days, high and low - but StackExchange seems to be the best bet.

Ganesh Sittampalam
  • 30,396
  • 8
  • 95
  • 119
Francis Kim
  • 125
  • 1
  • 1
  • 7

3 Answers3

3

This would be a nice Raspberry Pi project for Mathematica, which comes bundled free on the Raspbian OS.

You can program it up and leave it running. It's not expensive and doesn't use much power.

A program to monitor stock prices or volume could be written as simply as :-

enter image description here

This checks the volume of trades of Oct 2014 US crude oil futures every 30 seconds and sends an email if the volume jumps by more than 100.

The financial data in this example is curated from Yahoo. If specific data is not available or not updated frequently enough, if you can find an alternative online data source it's usually possible read the data in. For example, this is apparently real-time data :-

data = Import[
   "http://www.investing.com/commodities/crude-oil-streaming-chart",
   "Data"];
First[Cases[data, {"Crude Oil", __}, Infinity]]

{Crude Oil, 92.79, -0.67, -0.71%}

After leaving the above program running while writing this the volume of trades has risen like so :-

enter image description here

Edit

I just set this running on a Raspberry Pi. I had to use gmail for the email setup as described in this post: Configuring Mathematica to send email from a notebook. Anyway, it's working. Hope I don't get inundated with emails. ;-)

datalist = {};

task = CreateScheduledTask[
   AppendTo[datalist,
    {DateList[], v2 = FinancialData["NYM:CLV14", "Volume"]}];
   If[v2 - v1 > 100,
    SendMail[
     "To" -> "me@email.com",
     "Subject" -> "Volume alert",
     "Body" -> "Volume has jumped 100+ in the last 30 secs.",
     "From" -> "xxx...@gmail.com",
     "Server" -> "smtp.gmail.com",
     "ReplyTo" -> "xxx...@gmail.com",
     "UserName" -> "xxx...@gmail.com",
     "Password" -> "secret",
     "PortNumber" -> 587,
     "EncryptionProtocol" -> "StartTLS"]];
   v1 = v2, 30];

v1 = FinancialData["NYM:CLV14", "Volume"];
StartScheduledTask[task];
Chris Degnen
  • 10,107
  • 1
  • 21
  • 36
1

TdAmeritrade offers this service for free using 3rd party company markit. From markit's site, below is their guarantee.

http://www.markit.com/product/markit-on-demand

Markit On Demand delivers an average of two million alerts per day through various technology platforms and via multiple channels, including email, instant messages, wireless, RSS and Facebook. Investors can subscribe to their alerts of choice, and Markit On Demand guarantees that they will receive an alert within five minutes of the event trigger for all price and volume alerts

Osa E
  • 166
  • 5
0

Real-time equity (or any other market) data is not available for free anywhere in the US. It is always delayed by 10-15 minutes.

On the other hand, online brokers who target the "day trader" (Interactive Brokers, TD Ameritrade, etc.) offer much closer to real-time data AND feature all the tools/alerts/charts/etc. you could ever possibly dream of. I bet the type of alert you're asking for is available with just a couple of clicks on one of these brokers' platforms.

Of course, accounts with these online brokers are not free; you must pay for these sophisticated tools and fast market access. Another down side is that the data feeds sent to you by even the most sophisticated online broker are still delayed by tens of seconds compared to the data feeds used by big banks and professional investors. Not to mention that the investment arm of the broker you use will be making its own trades based on the data feeds before relaying them on to you.

So this begs the question: why do you need real-time information? Are you trying to "day trade" -- i.e. profit from minute-to-minute fluctuations in the stock market? (I can't in good conscience recommend that, but best of luck to you.) If on the other hand you don't truly need "real-time" data for your application, then I support @ChrisDegnen's approach -- use public data feeds and write your own software. You probably will not find any free tools for the sort of alerting you're looking for because most folks who want these types of alerts also need faster feeds and are therefore already using an online broker's tools.

dg99
  • 6,056
  • 27
  • 33