Commit Graph

419 Commits

Author SHA1 Message Date
Mark Veidemanis 4a1c359bf9
Separate out common functions 2022-07-21 13:48:57 +01:00
Mark Veidemanis ba9f99a23f
Add function for getting only some account details 2022-07-21 13:48:55 +01:00
Mark Veidemanis 00d441d17d
Add verification callback 2022-07-21 13:48:52 +01:00
Mark Veidemanis b07dfad37e
Implement getting the link 2022-07-21 13:48:49 +01:00
Mark Veidemanis ae08955d6b
Implement verification commands 2022-07-21 13:48:48 +01:00
Mark Veidemanis ed5fd3dafd
Implement getting the authentication link 2022-07-21 13:48:45 +01:00
Mark Veidemanis 87d96f6c41
Write the initial verification implementation 2022-07-21 13:48:42 +01:00
Mark Veidemanis a4c79973d8
Begin verify class 2022-07-21 13:48:40 +01:00
Mark Veidemanis a1a349a9de
Add LBTC tests 2022-07-21 13:48:37 +01:00
Mark Veidemanis 165fe48234
Filter the currencies in Agora 2022-07-21 13:48:35 +01:00
Mark Veidemanis 9360af7588
Add LBTC ad testing data 2022-07-21 13:48:32 +01:00
Mark Veidemanis 8e867b8133
Move bank name definition 2022-07-21 13:48:29 +01:00
Mark Veidemanis cb70e7ad49
Dump the account JSON as the content is variable 2022-07-21 13:48:27 +01:00
Mark Veidemanis dbf4a78651
Fix datetime parsing 2022-07-21 13:48:24 +01:00
Mark Veidemanis 36b9421846
Notify if no account information found 2022-07-21 13:48:21 +01:00
Mark Veidemanis 0ba5cc38b3
Simplify markets 2022-07-21 13:48:19 +01:00
Mark Veidemanis 506fe82801
Fix tests 2022-07-21 13:48:17 +01:00
Mark Veidemanis 98103c5680
Pass platform to calls 2022-07-21 13:48:15 +01:00
Mark Veidemanis 9b3f36cc44
Account for LBTC time formats 2022-07-21 13:48:14 +01:00
Mark Veidemanis ddee10958f
Make sources platform conscious 2022-07-21 13:48:12 +01:00
Mark Veidemanis d2d74a2086
Add bank name to markets and filter currencies 2022-07-21 13:48:10 +01:00
Mark Veidemanis 6a33b82c28
Update Nordigen mappings 2022-07-21 13:48:08 +01:00
Mark Veidemanis 235e7c5516
Fix ad-related methods in LBTC 2022-07-21 13:48:07 +01:00
Mark Veidemanis e73c1d4dc3
Amend margins code to accept LBTC 2022-07-21 13:48:03 +01:00
Mark Veidemanis 72ce2704a6
Account for LBTC in lookup_rates 2022-07-21 13:48:01 +01:00
Mark Veidemanis f39e6112e4
Handle LBTC in autoprice 2022-07-21 13:48:00 +01:00
Mark Veidemanis 7cfeb95b10
Provide the provider to market and money functions 2022-07-21 13:47:59 +01:00
Mark Veidemanis c173e9d232
Add LBTC totals to ES cast 2022-07-21 13:47:57 +01:00
Mark Veidemanis 05bdc5f1e3
Port releasing trades to LBTC 2022-07-21 13:47:55 +01:00
Mark Veidemanis e5b7f29346
Port distributing account details to support LBTC 2022-07-21 13:47:53 +01:00
Mark Veidemanis 0e4fa8a0bb
Implement LBTC when getting wallet balances 2022-07-21 13:47:52 +01:00
Mark Veidemanis e751fcd39d
Implement LBTC versions of each command 2022-07-21 13:47:50 +01:00
Mark Veidemanis 1c702cd755
Fix transactions tests 2022-07-21 13:47:48 +01:00
Mark Veidemanis 84d0d3aa7c
Reformat to reduce line length 2022-07-21 13:47:46 +01:00
Mark Veidemanis 1501cd0db3
Implement generic command types 2022-07-21 13:47:45 +01:00
Mark Veidemanis be356c2721
Reformat to reduce line length 2022-07-21 13:47:43 +01:00
Mark Veidemanis 6dbed22e49
Implement LBTC authentication 2022-07-21 13:47:41 +01:00
Mark Veidemanis 6a130592b6
Allow blank senders for first attempts 2022-07-21 13:47:36 +01:00
Mark Veidemanis 94429d0aaa
Implement sender-based anti-fraud system 2022-07-21 13:47:33 +01:00
Mark Veidemanis fec536616d
Add extra Serde mappings for transaction data 2022-07-21 13:47:30 +01:00
Mark Veidemanis b14a07b3b2
Refactor transactions into readable code 2022-07-21 13:47:28 +01:00
Mark Veidemanis 9151ab3ba6
Create settings options for different sinks 2022-07-21 13:47:25 +01:00
Mark Veidemanis f85342dc2e
Implement removing accounts from Nordigen 2022-07-21 13:47:23 +01:00
Mark Veidemanis a7a2bb729c
Better format for ntransactions 2022-07-21 13:47:20 +01:00
Mark Veidemanis d93eb8e936
Implement fetching account balances 2022-07-21 13:47:17 +01:00
Mark Veidemanis dc1b11bf1e
Fix creating ads 2022-07-21 13:47:15 +01:00
Mark Veidemanis cd0a772e65
Fix references not being pulled 2022-07-21 13:47:12 +01:00
Mark Veidemanis 74bcf4a5ab
Notify on unsuccessful release 2022-07-21 13:47:08 +01:00
Mark Veidemanis 37820306e8
Properly pad error/warning messages 2022-07-21 13:47:05 +01:00
Mark Veidemanis 6a620bd7bd
Add meta information to TX error notifications 2022-07-21 13:47:01 +01:00
Mark Veidemanis d36bf2a048
Notify of irreconcilable trades 2022-07-21 13:46:57 +01:00
Mark Veidemanis 5588d016f2
Fix calls to CoinGecko 2022-07-21 13:46:54 +01:00
Mark Veidemanis ae2697049b
Add subclass to transactions tests 2022-07-21 13:46:51 +01:00
Mark Veidemanis 00f1a40190
Fix public ad currency check 2022-07-21 13:46:47 +01:00
Mark Veidemanis 2f9fb31baf
Make Nordigen and TrueLayer compatible with Transactions 2022-07-21 13:46:45 +01:00
Mark Veidemanis b3a39401b5
Implement serde for JSON deserialisation 2022-07-21 13:46:41 +01:00
Mark Veidemanis a69a585c71
Don't message if trade release failed 2022-07-21 13:46:38 +01:00
Mark Veidemanis 0094da841e
Fix markets tests 2022-07-21 13:46:34 +01:00
Mark Veidemanis 49b1f0ea52
Fix getting transactions 2022-07-21 13:46:32 +01:00
Mark Veidemanis 7b38e487cf
Implement account handling for Nordigen 2022-07-21 13:46:28 +01:00
Mark Veidemanis 2ca518962c
Commit serde code 2022-07-21 13:46:25 +01:00
Mark Veidemanis ec33750c50
Require 100% feedback score to combat fraud 2022-07-21 13:46:21 +01:00
Mark Veidemanis ccb6a0f5bd
Fix running dist on all assets 2022-07-21 13:46:18 +01:00
Mark Veidemanis 7323c9446c
Start implementing LBTC class 2022-07-21 13:46:14 +01:00
Mark Veidemanis b1fd9a3197
Move some Agora functions to money/markets 2022-07-21 13:46:11 +01:00
Mark Veidemanis 45392455fa
Fix Agora tests 2022-07-21 13:46:08 +01:00
Mark Veidemanis f9c57e60bf
Create mock LocalBitcoins object 2022-07-21 13:46:05 +01:00
Mark Veidemanis ef1056c140
Pass sources to IRC client 2022-07-21 13:46:00 +01:00
Mark Veidemanis 1827bf5fff
Move common ad details to dedicated config section 2022-07-21 13:45:57 +01:00
Mark Veidemanis 32d4a9d0bd
Port Agora API copy to LocalBitcoins 2022-07-21 13:45:53 +01:00
Mark Veidemanis ff96322ffd
Add example settings file 2022-07-21 13:45:50 +01:00
Mark Veidemanis 7f85d21538
Begin implementing LocalBitcoins version of Agora abstraction API 2022-07-21 13:45:46 +01:00
Mark Veidemanis cb15346a78
Refactor Agora into sources 2022-07-21 13:45:43 +01:00
Rufus Segar 8bec00d825
Add localbitcoins.py 2022-07-21 13:45:41 +01:00
Mark Veidemanis e3d3595efd
Add extra tests for transactions fields 2022-07-21 13:45:38 +01:00
Mark Veidemanis c213fe9d5d
Fix transactions tests 2022-07-21 13:45:36 +01:00
Mark Veidemanis fbe9dc2325
Fix output from release trade and notify about useless accounts 2022-07-21 13:45:33 +01:00
Mark Veidemanis 4e9e5ef0fb
Pass through payment details to redist 2022-07-21 13:45:30 +01:00
Mark Veidemanis 7effd60954
Fix references and make releasing live 2022-07-21 13:45:27 +01:00
Mark Veidemanis 4a0d8ed1ad
Create a function to get all valid bank details 2022-07-21 13:45:25 +01:00
Mark Veidemanis 5ed07abc07
Fix visibility setting and use the account details when distributing ads 2022-07-21 13:45:22 +01:00
Mark Veidemanis 6b599902c0
Don't use the asset name in references 2022-07-21 13:45:20 +01:00
Mark Veidemanis 3fba402964
Don't do a different thing for only one provider 2022-07-21 13:45:17 +01:00
Mark Veidemanis f2c9725fcb
Implement propagating account data to ads 2022-07-21 13:45:14 +01:00
Mark Veidemanis aefa6c58a4
Call the base class from TrueLayer with our fetched transactions 2022-07-21 13:45:12 +01:00
Mark Veidemanis cbb7294f23
Implement mapping and transaction fetching 2022-07-21 13:45:09 +01:00
Mark Veidemanis 878a261295
Add a todo in Agora 2022-07-21 13:45:06 +01:00
Mark Veidemanis 75b005485f
Remove some debugging code from Transactions and TrueLayer 2022-07-21 13:45:01 +01:00
Mark Veidemanis 95e9a55f19
Handle multiple accounts with TrueLayer 2022-07-21 13:44:59 +01:00
Mark Veidemanis 28d4db5694
Clean up colored logging 2022-07-21 13:44:56 +01:00
Mark Veidemanis 34a182cbf5
Simplify logger initialisation 2022-07-21 13:44:53 +01:00
Mark Veidemanis 539d6f1fbb
Use the Python logger instead of the Twisted one 2022-07-21 13:44:50 +01:00
Mark Veidemanis 80c696ef73
Add docstrings in Nordigen functions 2022-07-21 13:44:48 +01:00
Mark Veidemanis cb4dbe18f6
Remove fail argument in TrueLayer 2022-07-21 13:44:46 +01:00
Mark Veidemanis 4033496866
Remove leftover files 2022-07-21 13:44:44 +01:00
Mark Veidemanis 50c71703fd
Move IRC, commands and notify classes into a UX class 2022-07-21 13:44:43 +01:00
Mark Veidemanis 2423e4a066
Move sinks into their own class 2022-07-21 13:44:41 +01:00
Mark Veidemanis 2a8c56ead5
Remove references to Revolut in Transactions 2022-07-21 13:44:39 +01:00
Mark Veidemanis 971a6733a9
Remove debugging code and loop constructor 2022-07-21 13:44:37 +01:00
Mark Veidemanis 053293dfee
Fix Agora tests 2022-07-21 13:44:36 +01:00
Mark Veidemanis 2266300064
Remove calls to Revolut 2022-07-21 13:44:34 +01:00
Mark Veidemanis b53fbfc905
Fix TrueLayer 2022-07-21 13:44:32 +01:00
Mark Veidemanis 88e87e53d5
Re-enable Nordigen 2022-07-21 13:44:30 +01:00
Mark Veidemanis 8ab915fa65
Implement signin command for TrueLayer 2022-07-21 13:44:29 +01:00
Mark Veidemanis cbb81cec81
Create proper authcode flow for TrueLayer 2022-07-21 13:44:25 +01:00
Mark Veidemanis 6879d5040e
Fix transactions tests 2022-07-21 13:44:23 +01:00
Mark Veidemanis 3bf2e65cd7
Refactor initialisation and add docstrings to util module 2022-07-21 13:44:22 +01:00
Mark Veidemanis cdf99641ba
Implement getting TrueLayer access tokens 2022-07-21 13:44:20 +01:00
Mark Veidemanis a40423af8c
Begin implementing TrueLayer API 2022-07-21 13:44:19 +01:00
Mark Veidemanis ded27b9842
Begin implementing Nordigen API 2022-07-21 13:44:18 +01:00
Mark Veidemanis b9968612c8
Begin implementing Fidor API 2022-07-21 13:44:17 +01:00
Mark Veidemanis 5688c8adb5
Begin implementing Yapily API 2022-07-21 13:44:16 +01:00
Mark Veidemanis 4bcd2ddeff
Fix indentation while setting ES endpoint in Transactions 2022-07-21 13:44:15 +01:00
Mark Veidemanis fe643fc407
Simplify and refactor initialisation code 2022-07-21 13:44:14 +01:00
Mark Veidemanis f1cb463682
Fix errors and don't print ES logging 2022-07-21 13:44:13 +01:00
Mark Veidemanis 3ff4d512a4
Store cheat output in ES 2022-07-21 13:44:13 +01:00
Mark Veidemanis 9ef7f952f7
Create boilerplate money tests 2022-07-21 13:44:12 +01:00
Mark Veidemanis 6f9cf5cd01
Remove some debugging code from transactions tests 2022-07-21 13:44:11 +01:00
Mark Veidemanis c17e311f7e
Move get_profit to money 2022-07-21 13:44:10 +01:00
Mark Veidemanis 6de9c4d564
Fix reference to get_profit in commands 2022-07-21 13:44:09 +01:00
Mark Veidemanis ef5824892b
Simplify Ctrl+C signal handling 2022-07-21 13:44:08 +01:00
Mark Veidemanis d261298bf7
Write various transaction test cases 2022-07-21 13:44:07 +01:00
Mark Veidemanis 7599911279
Fix how min and max are used in transactions 2022-07-21 13:44:06 +01:00
Mark Veidemanis 3fd656e1df
Begin transactions tests 2022-07-21 13:44:05 +01:00
Mark Veidemanis 2e83516b19
Re-enable withdrawing upon fund release 2022-07-21 13:44:04 +01:00
Mark Veidemanis e8a6f55ed1
Move create_distribution_list to Markets library 2022-07-21 13:44:03 +01:00
Mark Veidemanis b6a5a2f96d
Move to_usd to Money library 2022-07-21 13:44:02 +01:00
Mark Veidemanis 859c1d20ef
Move rates and margin functions into Money library 2022-07-21 13:44:01 +01:00
Mark Veidemanis 74522342f7
Move lookup rates into new Money library 2022-07-21 13:44:00 +01:00
Mark Veidemanis c15492f161
Fix references to last_online_recent in Agora tests 2022-07-21 13:43:59 +01:00
Mark Veidemanis 896318982f
Move some functions to a util class from Agora 2022-07-21 13:43:59 +01:00
Mark Veidemanis 74d03e8180
Make ES optional and properly calculate open trade volume 2022-07-21 13:43:58 +01:00
Mark Veidemanis 3e769e8d33
Convert amount to float before adding in total calculation 2022-07-21 13:43:57 +01:00
Mark Veidemanis fc103e5bfa
Add check in Agora for validating ad response 2022-07-21 13:43:56 +01:00
Mark Veidemanis 9a3ddf609e
Add recurring call for getting total profit 2022-07-21 13:43:55 +01:00
Mark Veidemanis 3fdb728e04
Run balance checks intermittently 2022-07-21 13:43:54 +01:00
Mark Veidemanis aad966feff
Handle trying to stop the bot when threads are running 2022-07-21 13:43:53 +01:00
Mark Veidemanis 96168d8d6f
Differentiate between trades+profit and profit in ES 2022-07-21 13:43:52 +01:00
Mark Veidemanis bc0a60a601
Add a xtype parameter for future ES expansion 2022-07-21 13:43:51 +01:00
Mark Veidemanis 3111783f69
Log more things into ES 2022-07-21 13:43:50 +01:00
Mark Veidemanis f4b75e4b5b
Disable TLS warning for ES 2022-07-21 13:43:49 +01:00
Mark Veidemanis ccfb4d65bd
Add certs folder to gitignore 2022-07-21 13:43:48 +01:00
Mark Veidemanis a46f6ed3f3
Handle another kind of exception 2022-07-21 13:43:47 +01:00
Mark Veidemanis d9f55ce497
Add provider to trade information 2022-07-21 13:43:46 +01:00
Mark Veidemanis b88f49b6ae
Add commands to check only profit 2022-07-21 13:43:46 +01:00
Mark Veidemanis 9a50865480
Disable automatic withdrawals 2022-07-21 13:43:45 +01:00
Mark Veidemanis 1dbdb3acc7
Add commands to get various totals 2022-07-21 13:43:44 +01:00
Mark Veidemanis 2fa156c095
Add code formatting checks in runtest.sh 2022-07-21 13:43:43 +01:00
Mark Veidemanis 6e7df83427
Add script to run tests 2022-07-21 13:43:42 +01:00
Mark Veidemanis 5d5b818b9a
Write docstrings for Agora and Transactions classes 2022-07-21 13:43:41 +01:00