* Modifications for a smoother live run
* Fixes data appending
* Successfully allows multi-currency live trading. Adds multiple currencies to live DCA strategy
* Attempting to get cash and carry working
* Poor attempts at sorting out data and appending it properly with USD in mind
* =designs new live data handler
* Updates cash and carry strat to work
* adds test coverage. begins closeallpositions function
* Updates cash and carry to work live
* New kline.Event type. Cancels orders on close. Rn types
* =Fixes USD funding issue
* =fixes tests
* fixes tests AGAIN
* adds coverage to close all orders
* crummy tests, should override
* more tests
* more tests
* more coverage
* removes scourge of currency.Pair maps. More tests
* missed currency stuff
* Fixes USD data issue & collateral issue. Needs to close ALL orders
* Now triggers updates on the very first data entry
* All my problems are solved now????
* fixes tests, extends coverage
* there is some really funky candle stuff going on
* my brain is melting
* better shutdown management, fixes freezing bug
* fixes data duplication issues, adds retries to requests
* reduces logging, adds verbose options
* expands coverage over all new functionality
* fixes fun bug from curr == curr to curr.Equal(curr)
* fixes setup issues and tests
* starts adding external wallet amounts for funding
* more setup for assets
* setup live fund calcs and placing orders
* successfully performs automated cash and carry
* merge fixes
* funding properly set at all times
* fixes some bugs, need to address currencystatistics still
* adds 'appeneded' trait, attempts to fix some stats
* fixes stat bugs, adds cool new fetchfees feature
* fixes terrible processing bugs
* tightens realorder stats, sadly loses some live stats
* this actually sets everything correctly for bothcd ..cd ..cd ..cd ..cd ..!
* fix tests
* coverage
* beautiful new test coverage
* docs
* adds new fee getter delayer
* commits from the correct directory
* Lint
* adds verbose to fund manager
* Fix bug in t2b2 strat. Update dca live config. Docs
* go mod tidy
* update buf
* buf + test improvement
* Post merge fixes
* fixes surprise offset bug
* fix sizing restrictions for cash and carry
* fix server lints
* merge fixes
* test fixesss
* lintle fixles
* slowloris
* rn run to task, bug fixes, close all on close
* rpc lint and fixes
* bugfix: order manager not processing orders properly
* somewhat addresses nits
* absolutely broken end of day commit
* absolutely massive knockon effects from nits
* massive knockon effects continue
* fixes things
* address remaining nits
* jk now fixes things
* addresses the easier nits
* more nit fixers
* more niterinos addressederinos
* refactors holdings and does some nits
* so buf
* addresses some nits, fixes holdings bugs
* cleanup
* attempts to fix alert chans to prevent many chans waiting?
* terrible code, will revert
* to be reviewed in detail tomorrow
* Fixes up channel system
* smashes those nits
* fixes extra candles, fixes collateral bug, tests
* fixes data races, introduces reflection
* more checks n tests
* Fixes cash and carry issues. Fixes more cool bugs
* fixes ~typer~ typo
* replace spot strats from ftx to binance
* fixes all the tests I just destroyed
* removes example path, rm verbose
* 1) what 2) removes FTX references from the Backtester
* renamed, non-working strategies
* Removes FTX references almost as fast as sbf removes funds
* regen docs, add contrib names,sort contrib names
* fixes merge renamings
* Addresses nits. Fixes setting API credentials. Fixes Binance limit retrieval
* Fixes live order bugs with real orders and without
* Apply suggestions from code review
Co-authored-by: Adrian Gallagher <adrian.gallagher@thrasher.io>
* Update backtester/engine/live.go
Co-authored-by: Adrian Gallagher <adrian.gallagher@thrasher.io>
* Update backtester/engine/live.go
Co-authored-by: Adrian Gallagher <adrian.gallagher@thrasher.io>
* Update backtester/config/strategyconfigbuilder/main.go
Co-authored-by: Adrian Gallagher <adrian.gallagher@thrasher.io>
* updates docs
* even better docs
Co-authored-by: Adrian Gallagher <adrian.gallagher@thrasher.io>
* Ramshackle early leads to GRPC backtester
* Adds GRPC server, default config generation
* Partial support for GRPC backtester config
* Update to use Buf, merge fixes
* Full config for GRPC
* Adds new commands, causes big panic
* Fixes panics
* Setup for the future
* Docs update
* test
* grpc tests
* Fix merge issues. Lint and test
* minor fixes after rebase
* Docs, formatting and main fixes
* Change buf owner
* shazNits
* test-123
* rpc fixes
* string fixes
* Removes --singlerun flag and just relies on --singlerunstrategypath
* fixes test
* initial post merge compatability fixes
* this actually all seems to work? unexpected
* adds pluginpath to config
* rm unused func. add gitignore
* rm unused func. add gitignore
* lintle
* tITLE cASE lOG fIX,rm auth package, gitignore, tmpdir fix
* buf updates + gen. go mod tidy
* x2
* Update default port, update error text
* the generator should use the same path as the database/drivers/sqlite3
* remove unused data directory
* generate sqlboiler.json for model generation
* ignore target folder
* implemented binance and bitfinex GetHistoricCandles wrapper methods)
* coinbene supported added
* after and before clean up
* gateio wrapper completed
* merged upstream/master
* Added bsaic KlineIntervalSupported() method
* Converted binance fixed test
* WIP
* new KlineConvertToExchangeStandardString method added
* end of day WIP
* WIP
* end of day WIP started migration of trade history
* added kline support to hitbtc huobi lbank
* added exchangehistory to all supported exchanges started work on coinbase 300 candles/request method
* end of day WIP
* removed unused ta and misc changes to flag ready for review
* yobit cleanup
* revert coinbase changES
* general code clean up and added zb support
* poloniex support added
* renamed method to FormatExchangeKlineInterval other misc fixes
* linter fixes
* linter fixes
* removed verbose
* fixed poloniex test coverage
* revert poloniex mock data
* regenerated poloniex mock data
* a very verbose clean up
* binance mock clean up
* removed unneeded t.Log()
* setting verbose to true to debug CI issue
* first pass changes addressed
* common.ErrNotYetImplemented implemented :D
* comments added
* WIP-addressed exchange requests and reverted previous GetExchangeHistory changes
* WIP-addressed exchange requests and reverted previous GetExchangeHistory changes
* increased test coverage added kraken support
* OKGroup support completed started work on address GetExchangeHistory feedback and migrating to own PR under https://github.com/xtda/gocryptotrader/tree/exchange_history
* convert zb ratelimits
* gofmt run on okcoin
* increased delay on rate limit
* gofmt package
* fixed panic with coinbene and bithumb if conversion fails
* very broken end of day WIP
* added support for GetHistoricCandlesEx to coinbase and binance
* gofmt package
* coinbase, btcmarkets, zb ex wrapper function added
* added all exchange support for ex regenerated mock data
* update bithumb to return wrapper method
* gofmt package
* end of day started work on changes
* reworked test coverage added okgroup support general fixes/change requests addressed
* Added OneMonth
* limit checks on supportedexchanges
* reverted getexchangehistory
* reworked binance tesT
* added workaround for kraken panic
* renamed command to extended removed interval check on non-implemented commands
* added wrapperconfig back
* increased test coverage for FormatExchangeKlineInterval
* WIP
* increased test coverage for FormatExchangeKlineInterval bitfinex/gateio/huobi
* linter fixes
* zb kraken lbank coinbene btcmarkets support added
* removed verbose
* OK group support for other asset types added
* swapped margin to use spot endpoint
* index support added test coverage added for asset types
* added asset type to okcoin test
* gofmt
* add asset to extended method
* removed verbose
* add support for coinbene swap increase test coverage
* removed verbose
* small clean up of okgroup wrapper functions
* verbose to troubleshoot CI issues
* removed verbose
* added error check reverted coinbasechanges
* readme updated
* removed unused start/finish started work on decoupling api requests from kline package
* restructured coinbene, bithumb methods, added bitstamp support
* kraken time fix
* BTCMarkets restructure
* typo fix
* removed test for futures due to contact changing
* added start/end date to extended method over range
* converted to assettranslator
* removed verbose
* removed invalid char
* reverted incorrectly removed return
* added import
* further template updates
* macos hates my keyboard :D
* misc canges
* x -> i
* removed verbose
* updated fixCasing to allocate var before checks
* removed time conversion
* sort all outgoing kline candles
* fixCasing fix
* after/before checks added
* added parallel to test
* logic check on BTCmarkets
* removed unused param, used correct iterator
* converted HitBTC to use time.Time
* add iszero false check to candle times
* updated resultlimit to 5000
* new line added
* added comment to exported const
* use configured ratelimit
* fixed pair for test
* panic fixed WIP on fixCasing
* fixCasing rework, started work on readme docs
* enable rate limiter for wrapper issues tool
* docs updated
* removed err from return and formatted currency
* updated Yobit supported status
* Updated HitBTC to use onehour candles due to test exeuction times
* added further details to gctcli output
* added link to docs
* added link to tempalte
* disable FTX websocket in config_example
* fix poloneix
* regenerated poloniex mock data
* removed recording flag
* Migrated to goose & sqlboiler
* create tests with sqlboiler
* code clean up
* Added gct -> sqlboiler config gen
* dropped pgx support
* dropped pgx support because who needs connection pools
* reenable sqlite audit tests
* first pass of migration changes
* stuff is broken :D
* sqlboiler :D
* end of date commit
* Added comments code clean up
* revert go module files back to upstream
* bug fix
* pushed go.mod update to use correc goose version
* renamed sqlite to sqlite3 for consistency across codebase and PR feedback changes
* makefile updates
* things are broken end of day commit
* added postgresql test
* use correct database name
* travis fixes for env vars
* travis fixes for env vars
* test fixes
* run migration on test setup
* test adding postgres support to appveyor
* Skip tests on appveyor due to issues with missing binaries
* oh yeah i have to support windows don't i
* bumped goose version up
* add postgres to osx
* fix travis config as osx does not support services move spin up to before_script
* added PGDATA path fix
* pass PG_DATA to pg_ctl
* added initdb to before install
* fixes to wording and bumps up goose version
* who needs ssl anyway
* moved ssl to correct section :D
* bumped goose version up
* unbreak travis
* unbreak travis
* fix if database is disabled in config
* move strings to consts
* converted more strings to const
* improvements to sqlboiler mmodel gen
* Added contrib\sqlboiler file
* sqlboiler windows contrib fixes
* bumped goose version up
* :D whoops
* further fixes to sql models
* further fixes to sql models
* database type fix for config gen
* README update
* go.mod clean up
* added config details for appveyor
* appveyor ordering fix
* force psql9.6
* appveyor config changes
* all the environmen vars
* model changes for psql
* model changes for psql
* sqlite model fixes
* attempt at osx fix
* added error check for migration
* typos and check against goose error instead of string :D
* updated sqlboiler commit id
* bump sqlboiler version again
* set decimal package to @0bb1631
* readme and makefile updates
* bump goose version update readme and add override flag to config gen
* README typo fix and lowered inserts in test down to 20 as we are only testing that inserts work running 200 was unnecessary
* added gctcli command for audit event
* Added debug output toggle to config added both postgres & sqlite support to gctcli command
* Wording changes on errors
* set sqlite to 1 connection to stop locke database issues
* Usage update for order
* README updates with config examples
* go.mod/sum tidy
* removed lines in import second
* removed lines in imports
* convert local time to utc for database and display output
* go mod clean up and error checking to time
* renamed all packages to sqlite3
* added windows command output for sql model gen
* time conversion fix
* time conversion on gctcli