Skip to content

Commit

Permalink
Merge pull request #13 from 8ball030/feat/btc-perp-orders
Browse files Browse the repository at this point in the history
Feat/btc perp orders
  • Loading branch information
8ball030 authored Dec 26, 2023
2 parents 65eda19 + 1992f1f commit 0ca43e1
Show file tree
Hide file tree
Showing 14 changed files with 210 additions and 994 deletions.
4 changes: 0 additions & 4 deletions .github/workflows/common_check.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,6 @@ jobs:
run: |
poetry install -v
- name: Install Host Dependencies
run: |
poetry run python script/install.py
- name: Lint
run: |
poetry run make lint
Expand Down
46 changes: 44 additions & 2 deletions lyra/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from dotenv import load_dotenv
from rich import print

from lyra.enums import Environment, InstrumentType, OrderStatus, UnderlyingCurrency
from lyra.enums import Environment, InstrumentType, OrderSide, OrderStatus, OrderType, UnderlyingCurrency
from lyra.lyra import LyraClient
from lyra.utils import get_logger

Expand All @@ -34,7 +34,7 @@ def set_client(ctx):
"logger": ctx.logger,
"verbose": ctx.logger.level == "DEBUG",
}
chain = os.environ.get("ENVIROMENT")
chain = os.environ.get("ENVIRONMENT")
if chain == Environment.PROD.value:
env = Environment.PROD
else:
Expand Down Expand Up @@ -216,5 +216,47 @@ def cancel_all_orders(ctx):
print(result)


@orders.command("create")
@click.pass_context
@click.option(
"--instrument-name",
"-i",
type=str,
)
@click.option(
"--side",
"-s",
type=click.Choice(i.value for i in OrderSide),
)
@click.option(
"--price",
"-p",
type=float,
)
@click.option(
"--amount",
"-a",
type=float,
)
@click.option(
"--order-type",
"-t",
type=click.Choice(i.value for i in OrderType),
default="limit",
)
def create_order(ctx, instrument_name, side, price, amount, order_type):
"""Create order."""
print("Creating order")
client = ctx.obj["client"]
result = client.create_order(
instrument_name=instrument_name,
side=OrderSide(side),
price=price,
amount=amount,
order_type=OrderType(order_type),
)
print(result)


if __name__ == "__main__":
cli() # pylint: disable=no-value-for-parameter
23 changes: 23 additions & 0 deletions lyra/constants.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
"""
Constants for Lyra.
"""
from lyra.enums import Environment

PUBLIC_HEADERS = {"accept": "application/json", "content-type": "application/json"}


CONTRACTS = {
Environment.TEST: {
"BASE_URL": "https://api-demo.lyra.finance",
"WS_ADDRESS": "wss://api-demo.lyra.finance/ws",
"ACTION_TYPEHASH": '0x4d7a9f27c403ff9c0f19bce61d76d82f9aa29f8d6d4b0c5474607d9770d1af17',
"DOMAIN_SEPARATOR": '0x9bcf4dc06df5d8bf23af818d5716491b995020f377d3b7b64c29ed14e3dd1105',
"ETH_PERP_ADDRESS": '0x010e26422790C6Cb3872330980FAa7628FD20294',
"BTC_PERP_ADDRESS": '0xAFB6Bb95cd70D5367e2C39e9dbEb422B9815339D',
"TRADE_MODULE_ADDRESS": '0x87F2863866D85E3192a35A73b388BD625D83f2be',
},
Environment.PROD: {
"BASE_URL": "https://api.lyra.finance",
"WS_ADDRESS": "wss://api.lyra.finance/ws",
},
}
Loading

0 comments on commit 0ca43e1

Please sign in to comment.