Golang : Get a list of crosses(instruments) available to trade from Oanda account
Below is a simple program to get a list of available crosses for trading from Oanda.com. My original purpose of writing this code is for developing my own trading bot and from what I discovered is that ..... not all crosses are available to trade in Oanda. Therefore, it is good to limit the trading bot to the crosses available.
Here you go!
package main
import (
"fmt"
"github.com/awoldes/goanda"
)
func main() {
oandaAccountID := ""
oandaAPIKey := ""
fmt.Println("Get list of tradeable instruments for this account id : " + oandaAccountID)
UsingLIVEAccount := false // set false to use https://api-fxpractice.oanda.com
oanda := goanda.NewConnection(oandaAccountID, oandaAPIKey, UsingLIVEAccount)
// list out all the available instruments under this account
crossesAvailableToTrade := oanda.GetAccountInstruments(oandaAccountID)
for k, v := range crossesAvailableToTrade.Instruments {
fmt.Println(k, v.Name)
}
// list only CURRENCY
fmt.Println("================================================================")
for _, v := range crossesAvailableToTrade.Instruments {
// only print those with type CURRENCY
if v.Type == "CURRENCY" {
//fmt.Println(k, v.Name)
fmt.Println(v.Name, ",")
}
}
}
See also : Golang : Oanda bot with Telegram and RSI example
By Adam Ng(黃武俊)
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+32.3k Golang : convert(cast) bytes to string
+5.4k Unix/Linux : How to fix CentOS yum duplicate glibc or device-mapper-libs dependency error?
+8.3k Golang : Identifying Golang HTTP client request
+4k Golang : The Tao of importing package
+10.2k Golang : Pagination with go-paginator configuration example
+15.4k Golang : Get future or past hours, minutes or seconds
+6.5k Javascript : How to check a browser's Do Not Track status?
+8.9k Golang : Convert file unix timestamp to UTC time example
+12.4k Golang : Send email with attachment(RFC2822) using Gmail API example
+10.9k Golang : Extract part of string with regular expression
+5.9k Golang : Use modern ciphers only in secure connection
+12.5k Golang : Google Drive API upload and rename example