Giter Club home page Giter Club logo

ticktrackerkdb's Introduction

Prerequisite

kdb: It is tested with KDB+ 4.0. For license and download visit at https://www.kx.com

EODHistoryData: This project uses https://eodhistoricaldata.com/ to get option and trae data. The key used is for free uses of single ticker AAPL. However, one can use any ticker provided key is upated mentioned in fecthOption.q Ag-Gid: This is one of great API for table and graph and more can be learnt at https://www.ag-grid.com/, for this project ag-grid community addition is used.

Getting Started

  1. cd ~; git clone <project_root>
  2. cd ~/ticktrackerkdb/src/kdbchannel/q
  3. ./startQ.sh
  4. cd ~/ticktrackerkdb/
  5. sudo npm install Below are acceptable warnings

npm WARN [email protected] requires a peer of react@^16.3.0 but none is installed. You must install peer dependencies yourself.

npm WARN [email protected] requires a peer of react-dom@^16.3.0 but none is installed. You must install peer dependencies yourself.

npm WARN [email protected] requires a peer of react@^16.3.0 but none is installed. You must install peer dependencies yourself.

npm WARN [email protected] requires a peer of react-dom@^16.3.0 but none is installed. You must install peer dependencies yourself.

npm WARN [email protected] requires a peer of typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta but none is installed. You must install peer dependencies yourself.

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/chokidar/node_modules/fsevents):

npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents):

npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/watchpack-chokidar2/node_modules/fsevents):

npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/webpack-dev-server/node_modules/fsevents):

npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

  1. sudo npm start Save the output showing url. For example Compiled successfully!

You can now view ticktrackerkdb in the browser.

Local: http://localhost:3000 On Your Network: http://<your_ip_address>:3000

Play

  1. Point your browser to the url is previous step
  2. If this is your first time, you need to build table by running script at ~/ticktrackerkdb/src/kdbchannel/q/fetchEOD/crontab.txt . See below for inline export SSL_VERIFY_SERVER=NO;/home/$USER/q/l64/q /home/$USER/kxblogs/fetchOption.q -rootdir "/home/$USER/db" > /tmp/fetchOption.q.log 2>&1 Upon successful run, it should build Option and trade related few tables. Install crontab from ~/ticktrackerkdb/src/kdbchannel/q/fetchEOD/crontab.txt for sunsequent runs and data collection
  3. The drop down will have Dated Date, Ticker and expiration date populated and show table. You shold also see graph showing volatility changes with strike as below Implied Volatilty
  4. After few run of days, you can select a particular dated date and see change in IVOL (Implied Volatility) for each expiration to build and track your expectation for price movement of your ticker.

TODO

  1. Add methodolgy to calculate IVOL based on trade history
  2. EODHistory may have outliers and need cleansing.

Reference

For websocket and its integration with ReactJS has be referred at white page/kx blog referred is from link https://kx.com/blog/single-page-applications-and-kdb-react/. This is an excellent work and I am following pattern of funcs.js, start.q and main.q

ticktrackerkdb's People

Contributors

vvishwa avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.