Stock Market Data Collection from Secure Servers using C++ Open Source Libraries

I will present an update on my ongoing software development project to gather real-time stock and option market data from web APIs that require modern security protocols, including OAuth.

My work has progressed in the past year since presenting What Developers Should Know about Options Trading and Building DIY Trading Platforms. I will continue this topic focusing on how I solved the key problem of getting real-time quote data from E*Trade/Morgan Stanley’s servers using their OAuth-secured web API.

By combining the Curl, XML2, GZip and OAuth open-source libraries, my new market data aggregation tool automates data gathering from the web into Excel charts, where it’s overlaid with custom visualizations that drive investment decisions. My portable C++ approach works without Google, browsers or newer programming languages. I am also working to integrate these new capabilities into the Lightwing digital signage player, which runs on Yocto embedded Linux.

This talk is relevant for anyone that wants to pull any type of information from the modern web using HTTPS security protocols that require certificate authorities, RSA key pairs, SHA1/HMAC signatures and/or OAuth. A good first step is understanding which libraries are actually required for a given application. I will break that down.

I will also survey some other low-cost platforms for stock market data like Yahoo, BarChart and Polygon, since Google and Microsoft have dropped the ball by discontinuing market data services.

This talk will be at the regular, monthly meeting of the D/FW Unix Users Group on Thursday, August 8, 2024, at 7:00 pm at Improving, in Plano. This is a free event, open to the public and pizza is usually provided by Improving.

The Improving office is located at 5445 Legacy Drive, Suite 100, Plano, Texas. The doors to the building are locked at 6:00 pm, but someone will be available to let people in after 6:00. There will be a note on the doors with a phone number to call to get someone to let you in.

Presentation at Texas Independence Conference

I will be speaking at the Texit Conference in Waco on Friday about the future of nuclear power and electric grid reliability in Texas. Texas’ electric grid problems are the direct result of US federal energy policies that mandated the premature closing of coal-fired power plants and incompetent ERCOT management. Huge sums of money have been spent on intermittent wind and solar projects with insufficient battery storage and no new nuclear power generation. Texas is in a very unique position to lead the US and the world with the deployment of advanced new nuclear power technologies, but we must create a Texas Nuclear Regulatory Agency that is capable and willing to license new nuclear plants in Texas.

Nuclear Power and the Strength of Texas Energy

 

Texas Independence Conference

What Developers Should Know about Options Trading and Building DIY Trading Platforms

I will be presenting a fast-paced overview of my journey from freelance software development to successful stock options trading for income, using mostly free software tools and web platforms.

Think stock options are complicated and risky? You probably don’t know the whole story because it’s rarely explained well for DIY investors. I will attempt to fix that in just two hours! This will be an unusual introduction to options trading from the perspective of a self-taught developer (not Wall Street) with a logical and practical approach to evaluating the relative risk/reward of owning stocks verses options, and how to get started with your own options brokerage account and custom software.

I will also showcase the collection of tools I use to automate stock market data collection, filtering opportunities and selecting option strategies that extract income from the machines that run Wall Street. The tools discussed will include Excel, E*Trade, IBKR, Seeking Alpha, BarChart, Yahoo, Twitter and brokerage-provided source codes. Excel automates the import and visualization of market data, overlaid with actual trades to provide real advantage to individual investors at very low cost. The trick is to adapt spreadsheet capabilities to complement brokerage account features. It’s also possible (and legal) to automate trades with the web APIs provided by brokerage firms with their sample codes in Java, Python and Node.js.

This talk is not for everyone. But, my approach leverages the skill set of software developers for those that are ready to actively manage their own investments by picking stocks or ETFs and exploring the option chains. I only invest for income. This is not day-trading or volatility-trading. But, of course, if you’re happy with your S&P index funds and just want to learn something new about how Wall Street works, you are welcome too!

This talk will be at the regular, monthly meeting of the D/FW Unix Users Group on Thursday, April 13, 2023, at 7:00 pm at Improving, in Plano. This is a free event, open to the public and pizza is usually provided by Improving.

The Improving office is at 5445 Legacy Drive, Suite 100, Plano, Texas. The doors to the building are locked at 6:00 pm, but someone will be available to let people in after 6:00. There will be a note on the doors with a phone number to call to get someone to let you in.

OptionsTradingPresentation.zip

Read more

Don’t Miss The Texas Linux Fest

The Texas Linux Fest will be in the Dallas area for the first time on May 31 – June 1. I am speaking at 4:30 on Saturday about building embedded Linux systems for multimedia and vision applications using open source and open hardware components. This will be an extended version of my presentation at the Embedded Vision Summit plus an update and preview of Lightwing’s new motion tracking CV features.

Texas Linux Fest 2019 Schedule

Presentation at the Embedded Vision Summit 2019

I will be speaking at the Embedded Vision Summit in Santa Clara, California, in May, about what I learned while integrating new computer vision features into Lightwing on embedded Linux. I will cover the best open source components for vision on ARM SoCs including OpenCV, OpenGL ES and Yocto.

Building Complete Embedded Vision Systems on Linux – From Camera to Display

Interest and investments into new applications of CV (such as autonomous vehicles) have exploded recently as shown by the growth of this conference. This growth is being driven primarily by the improving performance of embedded SoCs with accelerators such as GPUs and the falling costs they enable. The Embedded Vision Summit is the largest industry event focused exclusively on deploying computer vision applications on embedded devices with both business and technical tracks. It is well worth the time for anyone interested in this growing industry.

Lightwing is a Great TouchGFX Alternative on NXP i.MX6/8

The recent announcement that Draupner Graphics has been acquired by STMicroelectronics has put users of their TouchGFX software in serious jeopardy. The issue is that TouchGFX will no longer support any other SoC platforms other than ST’s chips. So, most TouchGFX users must now find an alternative platform for creating multimedia content.
 
TouchGFX users who are targeting the NXP i.MX6/8 series chips should take a look at the Lightwing platform as an alternative for creating multimedia content for embedded devices with rich user interfaces. Lightwing has most of the features of TouchGFX for compositing 3D assets, images, text fonts and touch controls, and like TouchGFX, Lightwing is cross-platform, for creating content on Windows for deployment to embedded Linux devices. But, Lightwing also has features that go way beyond TouchGFX, such as integrated support for animations, video, GLSL shader effects, live RSS web feeds, multi-panel video walls and even camera vision and motion tracking features are coming.
 
The other advantage of Lightwing as a TouchGFX alternative is that Lightwing directly exploits the GPU and VPU features of NXP’s i.MX6/8 series SoCs much more efficiently. TouchGFX can utilize GPUs, but its design has a lowest-common-denominator approach that attempts to support a large range of chips, and most SoCs have poor to no GPU at all. And rather than a single, proprietary GUI for creating content, Lightwing uses a suite of open tools, including editors for images and scripts, Blender for 3D assets and animations and ffmpeg for video. So, Lightwing is a great alternative to TouchGFX and costs less too with no per-seat licensing or maintenance fees.

Lightwing Demo at Annual CodeLaunch Startup Expo

Lightwing has been selected as a semi-finalist in this year’s CodeLaunch competition! This is the 6th annual event hosted by CodeAuthority and Improving Enterprises to encourage local tech startups with networking opportunities to collaborate and find early investors. CodeAuthority and Improving are generously providing FREE registration to my friends and colleagues who want to attend!

The CodeLaunch Expo will be held at the Dr. Pepper Arena in Frisco on Wednesday, August 1st at 4:00pm. Hors d’oeuvres and refreshments will be served. This is always a fun, casual and informative event. So, come out and show support for your favorite open multimedia UI technology and tech entrepreneurs and meet the movers and shakers of the local tech startup community!

CodeLaunch Expo 2018

Use the discount code Lightwing to register for FREE or follow this link:

Complementary Event Tickets

For more information on Lightwing:

Lightwing Introduction

The first 2 hours of the event will be presentations by the 5 finalists with immediate judging, audience voting and announcement of the winner of the competition. Lightwing is not a finalist this year, but is one of the few semi-finalists selected to exhibit at the exposition which begins immediately after the competition (around 6:00pm). I hope to see everyone there!

CodeLaunch Expo Logos

 

Lightwing adds Multi-panel Support for Building Video Walls

The Lightwing SDK version 1.2 for Windows has been released and it includes some major new features including support for building multi-panel video walls!  This is the second update since the launch of the Lightwing project a few years ago. The addition of multi-panel support allows Lightwing’s revolutionary fast approach to digital multimedia content creation to be applied to much bigger projects. And since Lightwing runs on low-cost open hardware from multiple vendors, it will drastically reduce the costs of building such large installations as well.

Lightwing features a distributed processing design where each panel in an array of panels has a dedicated Lightwing player attached via HDMI. The players communicate with each other over a local network via UDP multicast for timing synchronization. This allows for multi-panel displays of virtually unlimited size without burdening the local network with video data. Once all the players in an array are configured properly, multimedia content files can simply be copied to all the players and Lightwing divides the content into panel sections automatically.

For more information, see the Lightwing Video Wall Introduction.

The complete list of new features in this release includes:

  • Support for building multi-panel video walls
  • Support for playing audio via “wav” files
  • New Write command for saving user input via data channels to the local file system
  • Automatic rotation of background images for portrait displays
  • 3D objects now default to orthographic projections
  • Automatic default sizing of boxes from associated images, text and tickers

To learn more, see the Lightwing Introduction and download the free Lightwing SDK for Windows to get started!

LibreELEC + SolidRun is a Great Kodi on ARM Solution

I have been searching for awhile to find the best Kodi on ARM solution, and I just discovered a great new combination. The NXP i.MX6 series ARM processors have big advantages because of their better integrated GPU and VPU. This is critical for modern versions of Kodi on ARM because of Kodi’s heavy use of OpenGL and the need to off-load video decode tasks from the CPU. The result is a responsive, yet very cool-running system, compared to Intel or weak ARM chips, like Raspberry Pis and BeagleBoards.

The problem has been that support for Kodi has been lacking from most i.MX6 board vendors. But, here is a system combination that works really well now using the very latest LibreELEC 8.2.2 distribution of Kodi 17.6 (Krypton) and boards from SolidRun. LibreELEC’s official images work great on SolidRun’s CuBox boards using a 4.4 Linux kernel (which is included), or there are also images available with the older 3.14.79 kernel for other boards, including SolidRun’s HummingBoard2. Either of these boards can be attached to the back of a TV for a fantastic Kodi on ARM solution for an OTA broadcast TV DVR using a MediaPortal TV-Server, or just about any other popular back-end. If you install the MediaPortal add-on, it will work great with the Windows-based HTPC detailed in my Guide. If you don’t have a Windows HTPC, then enable the TVHeadEnd add-on that is provided with LibreELEC, which also requires a NAS drive and TV tuner on your network.

The SolidRun boards have long been among my favorite ARM i.MX6 boards because of their compact designs, better heat-sinking and better support for Kodi. But, you will have to download and flash your own microSD card to use these boards for Kodi. Here are the required steps:

First, unzip the downloaded LibreELEC image file and write it onto a microSD card (4 GB or larger) using a Linux command shell:

gunzip  LibreELEC-imx6.arm-8.2.2-3.14-sr.img.gz
sudo  dd  if=LibreELEC-imx6.arm-8.2.2-3.14-sr.img  of=/dev/sdd  bs=1M

Or, you can use the LibreELEC USB-SD Creator tool to make your microSD card using a Windows PC.

Then, install the microSD card into the slot on your SolidRun board and boot it. The first time LibreELEC boots, it automatically resizes its partition for whatever size microSD card is being used and then it does its second reboot.

On the third boot, LibreELEC will automatically download and install a complete update including a 4.4 kernel. This is fine on the SolidRun CuBox boards, but not on the HummingBoards. So, if you are using a HummingBoard, you must disable the automatic updates on the second boot and never enable it again. I have not found any significant problems with the older 3.14.79 kernel, so either one is fine.

The automatic update occurs during the next boot, but strangely the manual setting for updates does not take effect until after the next boot is complete, which is too late! The simple work-around is to unplug the Ethernet cable during the next boot. You can then safely reconnect it once that boot is complete and then reboot again. Now, install the plugins needed for your OTA TV-Server back-end. For MediaPortal it is:

Add-ons > Install from repository > LibreELEC Add-ons > PVR clients > MediaPortal PVR Client > Install
Add-ons > My add-ons > PVR Client > Configure > Connection > Mediaportal Hostname > IP Address

Once Kodi finds your MediaPortal server on your local network, it should automatically download your EPG and channel data. If you get permissions errors when playing video, be sure you have your recording and timeshift folders shared on your server. You may also need to enable Samba version 1 (SMB1) support (or install SMB2 on Windows). This used to be the default on older versions of Kodi, but must now be enabled manually:

Settings (Gear) > LibreELEC > System > Automatic Updates > manual
Settings (Gear) > LibreELEC > Services > Samba > Minimum supported protocol > SMB1

You are now ready to watch live TV!

 

SolidRun's CuBox and HummingBoard2 with Enclosures

SolidRun’s CuBox and HummingBoard2 with Enclosures

First Lightwing Update is Released

The Lightwing SDK version 1.1 for Windows has been released! This is the first update since the launch of the Lightwing project back in March 2016. I fixed some minor bugs and added some major new features and 3 new demos. The new features include:

  • Directional touch swiping with page transitions.
  • Background effects during page transitions.
  • Content pull updates from a web URL.
  • Improved display pausing.
  • New cube page transition.
  • New louvers effect for images, video and backgrounds.
  • New demo – Smith’s Furniture (with touch tracking 3D models).
  • New demo – Garth’s BBQ (with CSV food menu).
  • New demo – Fratello’s Italian Restaurant.

I have also been busy doing live demonstrations of Lightwing to potential corporate licensees and even some IoT startup groups in the Dallas area. The feedback has been really positive. Folks are amazed at how severely Lightwing (and the ARM i.MX6) outperforms 3D on Android and browsers . If you would like to see a live Lightwing demonstration before your competitors do, send me a private message using the contact form page above!

To learn more, see the Lightwing Introduction and download the free Lightwing SDK for Windows to get started!