All Projects → rahuljoshi44 → Graphvega

rahuljoshi44 / Graphvega

Licence: mit
Open Source Options Analytics Platform.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Graphvega

market-monitor
Interactive app to monitor market using Python
Stars: ✭ 20 (-89.42%)
Mutual labels:  options, stock-market, stocks
NSE-Stock-Scanner
National Stock Exchange (NSE), India based Stock screener program. Supports Live Data, Swing / Momentum Trading, Intraday Trading, Connect to online brokers as Zerodha Kite, Risk Management, Emotion Control, Screening, Strategies, Backtesting, Automatic Stock Downloading after closing, live free day trading data and much more
Stars: ✭ 78 (-58.73%)
Mutual labels:  options, stock-market, stocks
Td Ameritrade Client
TD Ameritrade Java Client
Stars: ✭ 35 (-81.48%)
Mutual labels:  stock-market, stocks, options
Finance-Robinhood
Trade stocks and ETFs with free brokerage Robinhood and Perl
Stars: ✭ 42 (-77.78%)
Mutual labels:  options, stock-market, stocks
Algobot
A C++ stock market algorithmic trading bot
Stars: ✭ 78 (-58.73%)
Mutual labels:  stock-market, stocks
Tradestation
EasyLanguage indicators and systems for TradeStation
Stars: ✭ 65 (-65.61%)
Mutual labels:  stock-market, stocks
Mop
Stock market tracker for hackers.
Stars: ✭ 1,534 (+711.64%)
Mutual labels:  stock-market, stocks
Simplestockanalysispython
Stock Analysis Tutorial in Python
Stars: ✭ 126 (-33.33%)
Mutual labels:  stock-market, stocks
Iex Api
The IEX API provides any individual or academic, public or private institution looking to develop applications that require stock market data to access near real-time quote and trade data for all stocks trading on IEX.
Stars: ✭ 683 (+261.38%)
Mutual labels:  stock-market, stocks
Robinhood Google Sheets
Robinhood Custom Functions for Google Sheets 📈
Stars: ✭ 117 (-38.1%)
Mutual labels:  stocks, options
Sumzerotrading
A Java API for Developing Automated Trading Applications for the Equity, Futures, and Currency Markets
Stars: ✭ 128 (-32.28%)
Mutual labels:  stock-market, stocks
Go Robinhood
A golang library for interacting with the Robinhood private API
Stars: ✭ 48 (-74.6%)
Mutual labels:  stocks, options
Robinhood On Rails
A web dashboard for the free trading platform Robinhood using Ruby on Rails and a private API
Stars: ✭ 134 (-29.1%)
Mutual labels:  stock-market, stocks
Tradingview Trainer
A lightweight app for practicing your trading on Tradingview
Stars: ✭ 106 (-43.92%)
Mutual labels:  stocks, options
Sina Stock Crawler
Sina stock options crawler with CSV output 新浪上证ETF期权数据爬虫
Stars: ✭ 12 (-93.65%)
Mutual labels:  stock-market, stocks
Robinhood
Unofficial Documentation of Robinhood Trade's Private API
Stars: ✭ 1,569 (+730.16%)
Mutual labels:  stock-market, stocks
Turingtrader
The Open-Source Backtesting Engine/ Market Simulator by Bertram Solutions.
Stars: ✭ 132 (-30.16%)
Mutual labels:  stocks, options
Sec Edgar Downloader
Download SEC filings from the EDGAR database using Python
Stars: ✭ 146 (-22.75%)
Mutual labels:  stock-market, stocks
Bullish
Stock market performance insights and trends in your inbox daily.
Stars: ✭ 171 (-9.52%)
Mutual labels:  stock-market, stocks
Financedatabase
This is a database of 180.000+ symbols containing Equities, ETFs, Funds, Indices, Futures, Options, Currencies, Cryptocurrencies and Money Markets.
Stars: ✭ 554 (+193.12%)
Mutual labels:  stock-market, options

GraphVega

💎 About The Project

GraphVega is an open sourced options analytics platform that analyses and projects the P/L of a multi-legged options position with variation of the stock price under changes in volatility and days till expiration, using a black-scholes simulation.

It is designed with a goal to provide a simple and intuitive interface to analyze options, while also providing developers with the flexibility to add their own custom features.

🚀 Getting Started

Note: You will need to have NodeJS installed on your machine to run this app. If you don't have it on your machine already, you can install it here for free.

To get GraphVega up and running on your local machine, follow these steps:

  1. Clone the repository

    $ git clone  https://github.com/rahuljoshi44/GraphVega.git
    
  2. Switch to the root directory of the project (main folder where all the files are stored) and install the dependencies. This process might take a couple minutes depending on your download speed, so please wait!

    $ npm install
    
  3. Get a free API Key (for sandbox) from Tradier here. This project uses Tradier’s market data API for options and stock prices.

  4. In the root directory create a .env file and enter your API key and the API url as follows:

    TRADIER_API_KEY=YOUR_API_KEY_HERE
    API_BASE_URL=https://sandbox.tradier.com/v1/
    

    Replace YOUR_API_KEY_HERE with the API key you obtained from step 3. NOTE: You can also change the variable API_BASE_URL to the brokerage API url if you'd like to use the brokerage API endpoint.

  5. Run the application in either of two ways: Locally or via Docker (explained below):

Locally

In the root directory, run the following command:

$ npm start

Note that the front end react app runs on http://localhost:3000 while the server runs on http://localhost:8000 so make sure you don’t have anything running on those ports. If you want to run the server on a different port, change the port variable in server/app.js, and change theSERVER_URL variable in src/utils/url.js to the new server url.

Docker

Make sure to create the .env file from step 4 above before building the image, otherwise it won't be included.

Building:

$ docker build -t local/gv:latest -t local/gv:0.1.0 .

Running:

$ docker run -d --rm -p 3000:3000 --name graphvega local/gv

Stopping:

$ docker stop graphvega

Docker-Compose

Make sure to create the .env file from step 4 above before building the image, otherwise it won't be included.

Running:

$ docker-compose up

or 

$ docker-compose run

Stopping:

$ docker-compose down

⚡️ Usage

  1. After launching the app, type in the name of a company in the search bar and select the appropriate suggestion.
  2. Select an expiration date for the options chain
  3. After the option chain loads, add your options positions by clicking on the rows of the table.
  4. Switch to the analysis tab.
  5. Observe the P/L chart and adjust the implied volatility and days till expiry with the sliders as you like.

🌴 Code Structure

Broadly, the project is divided into the front end and the back end.

  • All frontend files are stored in the src directory.
  • Backend files are stored in server. These are used primarily for making API calls for market data.

There are three main front end components

  • src/components/main.jsx is the root component that uses optionChain.jsx and analysis.jsx
  • src/components/chain/optionChain.jsx is the base component for the ‘Option Chain’ tab
    • All files related to the option chain tab is stored under src/components/chain
  • src/components/analysis/analysis.jsx is the base component for the ‘Analysis’ tab
    • All files related to the analysis tab are stored under src/components/analysis

❤️ Contributing

Your contributions make the platform better and more useful to everyone! The contributions you make will be greatly appreciated.

To do so:

  1. Fork the project
  2. Create a branch
  3. Add your changes
  4. Push to the branch
  5. Open a Pull Request.

✏️ Built With

📋 License

GraphVega is distributed under the MIT license. See LICENSE.md for more information.

📬 Contact

Rahul Joshi - [email protected]

Feel free to contact me regarding any concerns about the app.

👊 Acknowledgements

Thanks to Tradier for the market data used on the platform.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].