-
Notifications
You must be signed in to change notification settings - Fork 0
/
content.slide
119 lines (78 loc) · 2.01 KB
/
content.slide
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
Trading with the Luno API
1 Jul 2020
Adam Hicks
Tech Lead - Luno
ahicks@luno.com
[[github.com/luno]]
[[github.com/adamhicks]]
* Resources
.link https://www.luno.com/developers
- Getting Started
- API Documentation
- SDKs for Python, Go, PHP
.link https://github.com/adamhicks/luno-example
- Quick Start
- Code examples
* Overview
- What is an API?
- What can I do on the Luno API?
- Getting started
* What is an API?
* What humans see
`https://www.luno.com/trade/markets/XBTGBP`
.image placeorder.png 400 _
* What computers see
*Request*
`HTTP`POST`
`https://api.luno.com/api/1/postorder?pair=XBTGBP&type=ASK&volume=0.01&price=7415.31`
*Response*
`200`OK`
`{"order_id":`"BX933A74BE8"}`
* APIs
A website is how a *human* uses a service, we:
- See images on a screen
- Move a cursor
- Type on a keyboard
- Click buttons
An API is how a *computer* uses a service, it:
- Makes an _request_
- Receives an _response_
- Runs code to figure out what to do next
* What can I do on the Luno API?
- Get market data
e.g. BTC/GBP Best Bid = 7535.41
- Get wallet balances
e.g. £32.42 available, £514.84 reserved
- Place orders
e.g. Sell 0.041 BTC for £9416.52/BTC
- Access trades
e.g. You sold 0.011 BTC for £98.45
- Send and Receive crypto
e.g. Send 0.021 BTC to another exchange
* How do I get started?
- Install Go
`https://golang.org/doc/install`
- Get the SDK
`go`get`github.com/luno/luno-go`
- Create an API key and secret
`https://www.luno.com/wallet/security/api_keys`
- Get Coding...
* Examples in Go
* Getting Balances
.code -edit balances/balances.go /^//START/,/^//END/
`go`run`balances/balances.go`
`BCH`0.02823515`
`XBT`0.09988558`
`ETH`0.3871153`
`EUR`6.050337`
`GBP`7.8712`
`LTC`1.87136022`
`XRP`114.896144`
* Placing an Order
.code -edit placeorder/place.go /^//START/,/^//END/
* Placing an Order
.code -edit cancelorder/cancel.go /^//START/,/^//END/
* Luno API
Enables programs to trade crypto
API key authorises your program to access your Luno account
Check your programs carefully, trades can *not* be reversed