Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ __pycache__/
# Distribution / packaging
.Python
env/
venv/
build/
develop-eggs/
dist/
Expand Down Expand Up @@ -60,3 +61,19 @@ target/

#Ipython Notebook
.ipynb_checkpoints

.vscode

venv/**

geminipy.egg-info
geminipy/lab
geminipy/lab/**
geminipy/lab/__init__.py
geminipy/lab/check_accounts.py
geminipy/lab/clearing_lab.py
geminipy/lab/search_repos.py
# Pycharm
.idea
data
data/accounts_info.json
29 changes: 12 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,21 @@
# Geminipy
A library for the Gemini bitcoin exchange API
A library for the Gemini bitcoin exchange API.

Easily communicate with the Gemini Bitcoin exchange API without
having to deal with HTTP requests.


Requirements
============
Please get an API key from [https://exchange.gemini.com/settings/api](https://exchange.gemini.com/settings/api)
A Python 3 interpreter (versions < 3.8 not tested)
Please get your API keys from [https://exchange.gemini.com/settings/api](https://exchange.gemini.com/settings/api)


Installation
============

```shell
pip install geminipy
pip install "git+https://github.com/pl0mo/geminipy"
```

Example
Expand All @@ -23,27 +24,21 @@ Example
```python
from geminipy import Geminipy

# The connection defaults to the Gemini sandbox.
# Add 'live=True' to use the live exchange
con = Geminipy(api_key='your API key', secret_key='your secret key', live=True)
# Set live param to False to use Gemini testing (sandbox) enviroment.
api = Geminipy(apikey='your API key', secret='your secret key')

# public request
symbols = con.symbols()

# a Requests response is returned.
# So we can access the HTTP reponse code,
# the raw response content, or a json object
print symbols.status_code
print symbols.content
print symbols.json()
symbols = api.get_symbols()

print(symbols)

# authenticated request
order = con.new_order(amount='1', price='200',side='buy')
order = api.place_order('btcusd', amount=1, price=200.0, side='buy',)

print order.json()
print(order)

#send a heartbeat
con.heartbeat()
api.get_heartbeat()
```

The required nonce is the current millisecond timestamp.
19 changes: 19 additions & 0 deletions changelog
Original file line number Diff line number Diff line change
@@ -1,5 +1,24 @@
# Geminipy Changelog

# v0.0.6
Code organization by creating "utils.py" and "core.py" files.
Some errors fixed on README examples.
Using findpackages in "setup.py" file.

# v0.0.5
Code update to python 3.6 or newer version.
Code simplified and refactored
Created new method "_requests" to unify all requests.
Code comments changed.
Method names changed for more friendly and autodoc ones.
New class Geminipy method "get_account_details"
New class Geminipy method "get_earn_balance"
New class Geminipy method "request_approved_address"
New class Geminipy method "remove_approved_address"
New class Geminipy method "get_notional_balances"
Changelog updated


# v0.0.4
Added "fees" function for the fee and notional volume API endpoint

Expand Down
Loading