btcpayserver / btcTransmuter

A self-hosted ,modular IFTTT-inspired system for bitcoin services written in C#
https://btcpayserver.org
77 stars 23 forks source link

Feature: Recipe to select "Best Rate" from multiple exchanges. #5

Open astupidmoose opened 5 years ago

astupidmoose commented 5 years ago

Not sure if this is possible, but it might be prudent to allow users to "Shop" the rates from multiple exchanges at the time of sale to ensure they are getting the best rate.

This would, of course, mean the customer requires BTC holdings on each exchange but might be worth it for high volume merchants where exchanges are vastly different.

Kukks commented 5 years ago

Ah, I should have guessed you would be here first with the hard questions :D let me look into what we can do

On Fri, Mar 15, 2019, 18:27 Mike Olthoff notifications@github.com wrote:

Not sure if this is possible, but it might be prudent to allow users to "Shop" the rates from multiple exchanges at the time of sale to ensure they are getting the best rate.

This would, of course, mean the customer requires BTC holdings on each exchange but might be worth it for high volume merchants where exchanges are vastly different.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/Kukks/btcTransmuter-vnext/issues/5, or mute the thread https://github.com/notifications/unsubscribe-auth/ABu-_hDrKJi39dTm7Jg4Y6FmYZ7bTs3hks5vW9f8gaJpZM4b29OF .

rockstardev commented 5 years ago

@Kukks if you ask me the bigger priority is #4 - on some exchanges you simply can't execute orders below certain minimum (on Coinbase I think it's $5 or $10)... or you don't want to convert over maximum.

I think for now this feature can remain as brainstorming... for start people will most likely just use whatever exchange is their Rate Source in BtcPayServer

Kukks commented 5 years ago

I am working on a new feature to tackle #3 and #4

Kukks commented 5 years ago

It's basically a way to create groups of actions that can execute after each other and can pipe data from each action to the next

Kukks commented 5 years ago

@astupidmoose I have now added an action to get the rate of a market symbol on an exchange you integrate. Still working on the full picture but I can see someone building a recipe action group as follows:

GetExchangeRate: Binance, BTCUSD GetExchangeRate: Kraken, BTCUSD GetExchangeRate: TheRockExchange, BTCUSD ChooseNumericValue: (Minimum, Action1.Bid, Action2.Bid, Action3.Bid) PlaceOrder( Exchange: Action4, Amount)

Kukks commented 5 years ago

at this rate you'll be able to use this as a trading bot lol

astupidmoose commented 5 years ago

Yes, that looks awesome! I won't be using as a bot, but I definitely think I would be using it to shop for the best rates.

Kukks commented 5 years ago

tumblr_o16n2kBlpX1ta3qyvo1_1280 (1)

This is me for the past few days working on plotting different ways to achieve @astupidmoose 's feature requests