Skip to main content

Liberal Alpha Python SDK for interacting with gRPC-based backend

Project description

Liberal Alpha SDK Usage Example

1️⃣ Initialize the SDK

You can initialize the SDK with default parameters:

from liberal_alpha.client import LiberalAlphaClient

private_key = "YOUR_PRIVATE_KEY"
# If wallet address is not provided, you can derive it from your private key:
wallet = get_wallet_address(private_key)

    client = LiberalAlphaClient(
        host="127.0.0.1",#optional
        port=8128,#optional
        api_key="api-key",#optional
        private_key=private_key #optional
    )
Send a JSON object via gRPC:
JSON_Object = {
    "Price": 100000,
    "Volume": 50,
    "Volume_USD": 5000000,
}

client.send_data("BTC_SOURCE1", JSON_Object, record_id="1")
3️⃣ Send Alpha Signal
Send an alpha signal:
alpha_data = {
    "signal": "buy",
    "confidence": 0.85
}

client.send_alpha("Alpha_ID", alpha_data, record_id="1")
4️⃣ Subscribe to Data
To subscribe to real-time data, use the subscribe_data method. Note that your API key, private key, wallet, and base URL are already set during initialization. You only need to specify the record to subscribe to and (optionally) provide an on_message callback for custom message handling. For example:
# Define a callback function to handle received messages
def on_message(message):
    print("Received message:", message)

# Subscribe to data from record_id 1:
client.subscribe_data(record_id=1, max_reconnect=5, on_message=on_message)

Ensure that your API Key, private key, and wallet address are correct, and that you have subscribed to the data you wish to receive via the website's subscribe channel.

Fetch My Records
To fetch the records associated with your account, use the my_records() method. This method makes an HTTP GET request to the backend endpoint /api/records using your API key for authentication, and returns the records in JSON format.

records = liberal.my_records()
print("My Records:", records)

Fetch My Subscriptions
To fetch your subscription information, use the my_subscriptions() method. This method sends an HTTP GET request to the backend endpoint /api/subscriptions with your API key for authentication, and returns the subscription details in JSON format.

subscriptions = liberal.my_subscriptions()
print("My Subscriptions:", subscriptions)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

liberal_alpha-0.1.11.tar.gz (18.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

liberal_alpha-0.1.11-py3-none-any.whl (19.9 kB view details)

Uploaded Python 3

File details

Details for the file liberal_alpha-0.1.11.tar.gz.

File metadata

  • Download URL: liberal_alpha-0.1.11.tar.gz
  • Upload date:
  • Size: 18.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.20

File hashes

Hashes for liberal_alpha-0.1.11.tar.gz
Algorithm Hash digest
SHA256 0238d64a64c7ab813b6e6a2b3650e2d8deba1a379e4f74200b51202de0f054ec
MD5 30f84756cfabc00feb21a3c3c67515e3
BLAKE2b-256 adf6dbaa9e16de7f1921790616013b0045d626103dd7553383bc8140fd1e8551

See more details on using hashes here.

File details

Details for the file liberal_alpha-0.1.11-py3-none-any.whl.

File metadata

  • Download URL: liberal_alpha-0.1.11-py3-none-any.whl
  • Upload date:
  • Size: 19.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.20

File hashes

Hashes for liberal_alpha-0.1.11-py3-none-any.whl
Algorithm Hash digest
SHA256 9fce15b3c6a6a623d67014f8fb1d921f7213ffd55519dfcca06d8fbbb10ead15
MD5 c20b2a48c2acb3de4b61783ca30279f7
BLAKE2b-256 b7c3456c9c67c2e7dcaea9c2999cc6372fb81391f22bb31ecdb74da68de02b01

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page