Skip to content

Instantly share code, notes, and snippets.

@carlos8f
Created May 20, 2018 03:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save carlos8f/24643623499e9dcc57373b807ef90695 to your computer and use it in GitHub Desktop.
Save carlos8f/24643623499e9dcc57373b807ef90695 to your computer and use it in GitHub Desktop.
Bot18 Licensing Model

Hey guys, I put aside development on the Alpha-version of the engine for the past few days, and focused some thought strictly on my ideal business model and licensing structure. Here's the raw notes but keep in mind that gist is very tentative and spit-bally, and what follows is the most recent and detailed info.

I'm probably going to do another Medium post and a product/pricing page on bot18.net about this, but for now, the "Cliff" notes:

Overview

  • The Bot18 project will have BOTH client and server-side components. The CLIENT will be just like what Zenbot is right now, so you can host it yourself, and it will include a CLI and a basic web gui.
  • The SERVER will be https://bot18.net (nickname: NET), will be closed-sourced, and hosted by me on AWS. It's already live and taking pre-orders for the CLIENT software and that will get you into the BETA (and 30+ people have already signed up since I launched it today!)

Dual-Layer, Dual-Licensed CLIENT

The CLIENT (or CLI in Zenbot terms) will be divided into 2 layers, ENGINE and USER. This is hybrid-sourced -- part open-source, part paid-license software.

ENGINE layer will be closed source

This is what you're paying for when you purchase a Bot18 "unlock code" or Single-IP License or Unlimited License:

  • The ENGINE does the low-level stuff (like what engine.js is in Zenbot) that generates the actual order prices and sizes and feeds each order to the exchange support code.
  • Serves on its own as a market-watching tool, aggregating stats and indicators for any crypto markets you choose to focus on.
  • With the addition of your crypto exchange API keys, it also serves as a general order-execution tool (--manual mode in Zenbot terms), and profit tracker.
  • Tracks your account balance, profit counters, trading sessions, long/short positions and goals, and your most successful strategies and stats.
  • Manual tools that trigger pre-defined scripts: E.g., pressing "s" on your keyboard to "smartly" sell your assets using a method you've predefined or selected from some presets.
  • Contains a code-signing security layer, to ensure you're running safe, non-hacked code, audited by me (a digital security professional with 10+ years experience).
  • I will include a certain number of STRATS (strats are part of the USER layer, see below) in the ENGINE distribution, which I select as the most successful by total net gain.
  • Automatically updates its core code from bot18.net so you don't have bother!

How a Bot18 unlock code works

Engine code (the core of Bot18) will be available from bot18.net (automatically downloaded by the Bot18 launcher) after you purchase an unlock code. You put the code into your launcher's conf file, and it contacts bot18.net. If you're using the code from a new IP address, bot18.net will send you an email and ask you to confirm that you'd like to set your allocated IP to that IP and mark the code as "used" (can no longer be released to another individual). If the code is already used, the email will ask you if you want to shift your allocated IP over to the other one. This is so you don't have to manually keep track of your IP addresses and re-allocate them through the bot18.net web interface.

USER layer be open source on Github

End-users of the CLIENT can inject their own node.js code into the USER layer, which talks to the ENGINE though a well-documented IPC API.

This includes:

  • Your STRAT (trading strategy), code that decides whether to buy or sell, when, and how.
    • Strategy scope is expanded significantly vs. what we have in Zenbot. Strategies can now control all aspects of opening and closing a trade deal or position and aren't limited to a single candles data stream to make their decisions, and can act with 500ms delay or better after a change in the market.
    • Non-engine-distributed strategies can be built by you in the USER layer (with a well-documented node.js API), bought through the bot18.net marketplace, or fetched from a remote git repo or local tarball.
  • Support code for exchanges (such as how exchange extensions currently function in Zenbot).
  • Whatever node.js libraries (or external services) it takes to execute a given strategy, including fetching and processing historical data, creating indicators, interpreting signals, and telling the ENGINE that we'd like to buy and/or sell, and optionally specific order sizes and prices.

So there you go, the empire begins! My current task is building a proof-of-concept of the core launcher, code signing, code updates and packaging, and dividing the Alpha code I already have into the layers defined above. I post live updates in the #bot18 channel of Zenbot Discord, and @bot18_net on Twitter.

Cheers and happy trading, Carlos

@neonorv
Copy link

neonorv commented Sep 22, 2018

is there indodax exchange?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment