Loading qi packages
qi is designed to be modular. To load one or more packages, use .qi.import:Command line
You can also specify the name of a package at the command line:Feed handlers
The first time you try to run a feed handler on any given machine, it will likely complain~/.qi/qi.profile and suggest an alias qi, which will allow the feed handler to run smoothly the next time around. This extra step should only be required once per machine.
With a feed running, the function tcounts[] shows the count of each table.
While the binance feed will start receiving data immediately, other feeds require an account (free) and an API key. The following examples will use the qi alias instead of q qi.q.
Using stacks
q processes usually work together as a stack. The tickerplant (tp) is a router that takes data from feeds, and manages subscriptions. To start a tp as part of a stack, run:1 (or any suffix) tells qi that this is a process that lives in a stack. Because no stack has been created, qi will create an example stack dev1, and will place a JSON configuration file in a stacks folder in the current working directory.
Other useful commands:
Hub
The hub process provides a view of all other processes:procs table that lists the various processes. From within the hub, you can control processes and stacks:
User interface
The uqi binary is a lightweight user interface for managing stacks. Download it from alphakdb.com/uqi. With the hub running on your local machine, create a new connection:- Type: q
- Host: localhost
- Port: 8000 (or your configured hub port)
License
qi.q and its packages are free to use, and distributed under the MIT license. The UI is also free to use, but an update is required every 90 days.Questions & Feedback
- Email: qi@alphakdb.com