<100 subscribers
Share Dialog
Share Dialog
Install python
Install cbpro library by: pip install cbpro
In Coinbase Pro, create your trading API, replace the key, b64secret and passphrase in the code
In Coinbase Pro, connect your bank account for USD fund deposit
Uncomment this line: #print(auth_client.get_accounts()) , temporarily delete all code after this line, run the code to retrieve the account string for your bank account, replace the ‘bbbbbbb’ string in the code with the account string
Run the code with command: python coinbase-dca.py 100 DOT
Now your Coinbase Pro account should automatically bought 100 USD of DOT token with market price.
Have fun!
import cbpro
import sys
import time
key = 'kkkkkkkkkkkkkkkkkkkkkkkkkk'
b64secret = 'ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss'
passphrase = 'pppppppppp'
amount = sys.argv[1]
coin = sys.argv[2]
usd_amount = int(amount)
print('Buy ' + coin + ' with $' + amount + ' ...')
auth_client = cbpro.AuthenticatedClient(key, b64secret, passphrase)
public_client = cbpro.PublicClient()
coin_ticker = coin + '-USD'
coin_price=round(float(public_client.get_product_ticker(product_id=coin_ticker)['price']),2)
print('Current ' + coin + ' Price is: $' + str(coin_price))
## Display all accounts
##print(auth_client.get_accounts())
## Default is BTC
coin_string = '43b6105b-731f-4659-9a67-4afb9d0befd6'
if coin == 'UNI':
coin_string='b308ab2f-8108-418e-b7ab-ed200bc9b7bb'
if coin == 'LINK':
coin_string='00845604-e10d-4158-8c9d-2536b98ac7ea'
if coin == 'ANKR':
coin_string='79635096-5ab7-4d03-ac0a-9cfc8ce9fad6'
if coin == 'MATIC':
coin_string='78066072-9e61-4e90-b77f-b8660bf87ac3'
if coin == 'STORJ':
coin_string=' b0cadd56-4b53-46d5-8b1a-af148d5ee67f'
if coin == 'BAL':
coin_string='62155e5a-a664-42bf-8bf8-dc5b10de5d49'
if coin == 'MANA':
coin_string='44e8585c-0708-42d3-9126-b1061bac1919'
if coin == 'ALGO':
coin_string='1e3131ff-c290-49fb-a349-3a64ee3f6003'
if coin == 'DOGE':
coin_string='931a38f0-beb1-4aca-b48a-9ef1f1342033'
if coin == 'ADA':
coin_string='aeeae914-85b3-46cd-a0af-b2cff05b27d4'
if coin == 'ADA':
coin_string='aeeae914-85b3-46cd-a0af-b2cff05b27d4'
if coin == 'ICP':
coin_string='35d0aa3f-c702-432b-a27b-0897c93099ae'
if coin == 'FIL':
coin_string='1588ca41-3e14-40d0-98f5-b2a282f83757'
if coin == 'AAVE':
coin_string='3370b1db-9807-4487-a3fa-d3fb8f5d4081'
if coin == 'ALGO':
coin_string='1e3131ff-c290-49fb-a349-3a64ee3f6003'
if coin == 'SNX':
coin_string='5ce13adb-bd33-4688-a4c7-ee067d94d3b8'
if coin == 'FET':
coin_string='e0a6572b-1c5d-4008-b294-ed018df8a43c'
if coin == 'GRT':
coin_string='6d020f78-5505-4f5d-b218-cc0a5633201b'
if coin == 'CRV':
coin_string='4a87fa2a-95a7-481c-9564-f3603fbe19da'
if coin == 'ATOM':
coin_string='91bbb9a4-c030-404c-aacb-a4a4c8f4d890'
if coin == 'AXS':
coin_string='b6d00425-20e2-426a-96b1-beab13e81bcd'
if coin == 'DOT':
coin_string='4a47096f-97f7-4069-b44e-ce6613d521f2'
if coin == 'AAVE':
coin_string='3370b1db-9807-4487-a3fa-d3fb8f5d4081'
if coin == 'REN':
coin_string='83a27416-c523-4f55-9b1e-337b65a836de'
## Show coin balance
print(auth_client.get_account(coin_string))
## Show USD balance
print(auth_client.get_account('eb3f5c47-6b9f-432d-9a43-67bc3c79ee8d'))
## Print coin and USD balance
coin_account = round(float(auth_client.get_account(coin_string)['available']),5)
usd_account = round(float(auth_client.get_account('eb3f5c47-6b9f-432d-9a43-67bc3c79ee8d')['available']),2)
print (coin + ' Balance is: ' + str(coin_account))
print ('USD Balance is: $' + str(usd_account))
#### Deposit amount USD from bank account
print ('Deposit ' + amount + ' USD from Bank account to CoinBase Pro account')
######### Depositing USD #########
if usd_amount > 1:
print(auth_client.deposit(amount, 'USD', 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb')) ## Bank Account
time.sleep(5)
usd_new_account = round(float(auth_client.get_account('eb3f5c47-6b9f-432d-9a43-67bc3c79ee8d')['available']),2)
usd_available= round(usd_new_account - usd_account,2)
## print coin and USD balance
print ('New USD Balance is: $' + str(usd_new_account))
print ('Total USD Added: $' + str(usd_available))
## debug
##usd_available = 100
if (usd_available >= usd_amount) :
#CoinBase Pro Buy coin with USD
print ('CoinBase Pro Account: Buy $' + amount + ' USD of ' + coin + ' ...' )
########## Buying coin ##########
print(auth_client.place_market_order(product_id=coin_ticker, side='buy', funds=amount))
time.sleep(10)
coin_new_account = round(float(auth_client.get_account(coin_string)['available']),5)
print ('New ' + coin + ' Balance is: ' + str(coin_new_account))
coin_available= round(coin_new_account - coin_account,5)
print ('Total ' + coin + ' Added: ' + str(coin_available))
Install python
Install cbpro library by: pip install cbpro
In Coinbase Pro, create your trading API, replace the key, b64secret and passphrase in the code
In Coinbase Pro, connect your bank account for USD fund deposit
Uncomment this line: #print(auth_client.get_accounts()) , temporarily delete all code after this line, run the code to retrieve the account string for your bank account, replace the ‘bbbbbbb’ string in the code with the account string
Run the code with command: python coinbase-dca.py 100 DOT
Now your Coinbase Pro account should automatically bought 100 USD of DOT token with market price.
Have fun!
import cbpro
import sys
import time
key = 'kkkkkkkkkkkkkkkkkkkkkkkkkk'
b64secret = 'ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss'
passphrase = 'pppppppppp'
amount = sys.argv[1]
coin = sys.argv[2]
usd_amount = int(amount)
print('Buy ' + coin + ' with $' + amount + ' ...')
auth_client = cbpro.AuthenticatedClient(key, b64secret, passphrase)
public_client = cbpro.PublicClient()
coin_ticker = coin + '-USD'
coin_price=round(float(public_client.get_product_ticker(product_id=coin_ticker)['price']),2)
print('Current ' + coin + ' Price is: $' + str(coin_price))
## Display all accounts
##print(auth_client.get_accounts())
## Default is BTC
coin_string = '43b6105b-731f-4659-9a67-4afb9d0befd6'
if coin == 'UNI':
coin_string='b308ab2f-8108-418e-b7ab-ed200bc9b7bb'
if coin == 'LINK':
coin_string='00845604-e10d-4158-8c9d-2536b98ac7ea'
if coin == 'ANKR':
coin_string='79635096-5ab7-4d03-ac0a-9cfc8ce9fad6'
if coin == 'MATIC':
coin_string='78066072-9e61-4e90-b77f-b8660bf87ac3'
if coin == 'STORJ':
coin_string=' b0cadd56-4b53-46d5-8b1a-af148d5ee67f'
if coin == 'BAL':
coin_string='62155e5a-a664-42bf-8bf8-dc5b10de5d49'
if coin == 'MANA':
coin_string='44e8585c-0708-42d3-9126-b1061bac1919'
if coin == 'ALGO':
coin_string='1e3131ff-c290-49fb-a349-3a64ee3f6003'
if coin == 'DOGE':
coin_string='931a38f0-beb1-4aca-b48a-9ef1f1342033'
if coin == 'ADA':
coin_string='aeeae914-85b3-46cd-a0af-b2cff05b27d4'
if coin == 'ADA':
coin_string='aeeae914-85b3-46cd-a0af-b2cff05b27d4'
if coin == 'ICP':
coin_string='35d0aa3f-c702-432b-a27b-0897c93099ae'
if coin == 'FIL':
coin_string='1588ca41-3e14-40d0-98f5-b2a282f83757'
if coin == 'AAVE':
coin_string='3370b1db-9807-4487-a3fa-d3fb8f5d4081'
if coin == 'ALGO':
coin_string='1e3131ff-c290-49fb-a349-3a64ee3f6003'
if coin == 'SNX':
coin_string='5ce13adb-bd33-4688-a4c7-ee067d94d3b8'
if coin == 'FET':
coin_string='e0a6572b-1c5d-4008-b294-ed018df8a43c'
if coin == 'GRT':
coin_string='6d020f78-5505-4f5d-b218-cc0a5633201b'
if coin == 'CRV':
coin_string='4a87fa2a-95a7-481c-9564-f3603fbe19da'
if coin == 'ATOM':
coin_string='91bbb9a4-c030-404c-aacb-a4a4c8f4d890'
if coin == 'AXS':
coin_string='b6d00425-20e2-426a-96b1-beab13e81bcd'
if coin == 'DOT':
coin_string='4a47096f-97f7-4069-b44e-ce6613d521f2'
if coin == 'AAVE':
coin_string='3370b1db-9807-4487-a3fa-d3fb8f5d4081'
if coin == 'REN':
coin_string='83a27416-c523-4f55-9b1e-337b65a836de'
## Show coin balance
print(auth_client.get_account(coin_string))
## Show USD balance
print(auth_client.get_account('eb3f5c47-6b9f-432d-9a43-67bc3c79ee8d'))
## Print coin and USD balance
coin_account = round(float(auth_client.get_account(coin_string)['available']),5)
usd_account = round(float(auth_client.get_account('eb3f5c47-6b9f-432d-9a43-67bc3c79ee8d')['available']),2)
print (coin + ' Balance is: ' + str(coin_account))
print ('USD Balance is: $' + str(usd_account))
#### Deposit amount USD from bank account
print ('Deposit ' + amount + ' USD from Bank account to CoinBase Pro account')
######### Depositing USD #########
if usd_amount > 1:
print(auth_client.deposit(amount, 'USD', 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb')) ## Bank Account
time.sleep(5)
usd_new_account = round(float(auth_client.get_account('eb3f5c47-6b9f-432d-9a43-67bc3c79ee8d')['available']),2)
usd_available= round(usd_new_account - usd_account,2)
## print coin and USD balance
print ('New USD Balance is: $' + str(usd_new_account))
print ('Total USD Added: $' + str(usd_available))
## debug
##usd_available = 100
if (usd_available >= usd_amount) :
#CoinBase Pro Buy coin with USD
print ('CoinBase Pro Account: Buy $' + amount + ' USD of ' + coin + ' ...' )
########## Buying coin ##########
print(auth_client.place_market_order(product_id=coin_ticker, side='buy', funds=amount))
time.sleep(10)
coin_new_account = round(float(auth_client.get_account(coin_string)['available']),5)
print ('New ' + coin + ' Balance is: ' + str(coin_new_account))
coin_available= round(coin_new_account - coin_account,5)
print ('Total ' + coin + ' Added: ' + str(coin_available))
No comments yet