Formulae: Difference between revisions
Line 27: | Line 27: | ||
* Matching other seller offers with a minimum price of 60 and a maximum of 80: ''min(max(bitty_lowest(1), 60), 80)'' | * Matching other seller offers with a minimum price of 60 and a maximum of 80: ''min(max(bitty_lowest(1), 60), 80)'' | ||
* Beating other seller offers by 0.50 down to a minimum price of 60 but a maximum of 80 in any case ''min(max(bitty_lowest(1) - 0.5, 60), 80)'' | * Beating other seller offers by 0.50 down to a minimum price of 60 but a maximum of 80 in any case ''min(max(bitty_lowest(1) - 0.5, 60), 80)'' | ||
===bitty_num_lowest(''<num BTC>'', ''<num sellers>'')=== | |||
Returns a 1 or 0 based on the number of sellers matching each other: | |||
* Returns 1 if there are at least ''num sellers'', each selling at least ''num BTC'' coins, that all have exactly the same price (and this price is the cheapest price for this offer). | |||
* Returns 0 otherwise. | |||
This call is particularly useful if you want to undercut others when you would be sharing trades with 5+ others offering 1 BTC, but you are happy to share with 0-4 others. This would be done, undercutting by 0.50, by using ''bitty_lowest(1) - (bitty_num_lowest(1, 5) * 0.5)''. | |||
Remember that any formula using bitty_lowest should be coupled with appropriate mins and maxs as above. | |||
==Foreign Exchange Rates== | ==Foreign Exchange Rates== |
Revision as of 08:13, 8 May 2014
The price formula text box allow for the price of your Bitcoins to dynamically alter as market conditions change.
The calculation process allows for a wide variety of mathematical operators typical in computing terminology (e.g. * for multiplied by and ^ for to the power of). Other available functions include:
- max - Maximum value from the parameters, e.g. max(80, mtgox_GBP_buy)
- min - Minimum value from the parameters
- average - Average (mean) value from the parameters
Figures from other Bitcoin markets can be used in the equation, and these take the form market_currency_type, e.g. mtgox_GBP_2bsr.
Special Functions
bitty_lowest(<num BTC>)
Returns the price of the best value active seller with same offer characteristics as your offer. They must have at least <num BTC> available for sale.
Important notes:
- This returns the lowest price offered by sellers if you are selling coins. If you are buying coins, it returns the highest price offered by sellers.
- This is updated every time the formulae are updated (every ten seconds) so it may take a few iterations for this value to stabilise.
- If you undercut others, you must undercut by at least 0.1% of the value. Anything significantly less than this will be considered spammy.
- If you undercut others, you should couple this with a max(...) modifier because your price could be dragged all the way down to 0 (or infinity when buying coins)
- bitty_lowest should never be used on its own as it will return 999,999.99 if you are the only active offer (0 if you are buying coins). Make sure you use it in combination with a min(...).
Three recommended ways of using bitty_lowest other functions are:
- Matching other seller offers with a minimum price of 60 and a maximum of 80: min(max(bitty_lowest(1), 60), 80)
- Beating other seller offers by 0.50 down to a minimum price of 60 but a maximum of 80 in any case min(max(bitty_lowest(1) - 0.5, 60), 80)
bitty_num_lowest(<num BTC>, <num sellers>)
Returns a 1 or 0 based on the number of sellers matching each other:
- Returns 1 if there are at least num sellers, each selling at least num BTC coins, that all have exactly the same price (and this price is the cheapest price for this offer).
- Returns 0 otherwise.
This call is particularly useful if you want to undercut others when you would be sharing trades with 5+ others offering 1 BTC, but you are happy to share with 0-4 others. This would be done, undercutting by 0.50, by using bitty_lowest(1) - (bitty_num_lowest(1, 5) * 0.5).
Remember that any formula using bitty_lowest should be coupled with appropriate mins and maxs as above.
Foreign Exchange Rates
Use fx_USD_code, e.g. fx_USD_GBP to get the number of GBP that make one USD (usually between 0.50 and 0.80). code can be almost any three character currency code.
Foreign exchange rates are derived from openexchangerates.org and are updated every hour.
Markets
BitcoinAverage
- btcavg_AUD
- btcavg_BRL
- btcavg_CAD
- btcavg_CNY
- btcavg_CZK
- btcavg_EUR
- btcavg_GBP
- btcavg_ILS
- btcavg_JPY
- btcavg_NOK
- btcavg_NDZ
- btcavg_PLN
- btcavg_RUB
- btcavg_SEK
- btcavg_SGD
- btcavg_USD
- btcavg_ZAR
Types
- 24h_avg - Weighted average price in the last rolling 24 hours
- ask - Weighted average highest price that coins are bought at on the market
- bid - Weighted average lowest price that coins are sold at on the market
- last - Weighted average last price that coins are sold at on the market
- total_vo - Total volume in the last rolling 24 hours
Bitstamp
- bitstamp_USD
Types
- ask - Highest price that coins are bought at on the market
- bid - Lowest price that coins are sold at on the market
- high
- low
- last - The last price a trade was completed at
- volume
BTC-e
- btce_BTCUSD
- btce_LTCCUSD
- btce_NMCUSD
Types
- buy - Highest price that coins are bought at on the market
- sell - Lowest price that coins are sold at on the market
- high
- low
- last - The last price a trade was completed at
- avg
- vol
- vol_cur
CoinDesk BPI
- coindesk_USD
- coindesk_EUR
- coindesk_GBP
Types
- bpi - The Blended Price Index current price
Coins-e
Coins-e is a virtual currency to virtual currency exchange only. All currencies supported by Coins-e that are based against BTC are available, and all prices are the last traded prices. It is recommended to use this as a multiplier against the BTC price on another market.
- coinse_XXXBTC' - Price of XXX against BTC. XXX is any of the virtual currencies traded on Coins-e.
Types
- ask - Highest price that coins are bought at on the market
- bid - Lowest price that coins are sold at on the market
- last - Last price a trade was completed at
Cryptsy
Cryptsy is a virtual currency to virtual currency exchange only. All currencies supported by Cryptsy that are based against BTC are available, and all prices are the last traded prices. It is recommended to use this as a multiplier against the BTC price on another market.
Types
- BTC - Last traded price against BTC
Examples
- cryptsy_LTC_BTC which is approximately 0.03 at the time of writing.
- btcavg_GBP_bid * cryptsy_LTC_BTC which is the average GBP price to sell one Bitcoin multiplied by the amount of Bitcoins that 1 Litecoin buys.
Feathercoin
- feathercoin_AUD
- feathercoin_EUR
- feathercoin_GBP
- feathercoin_NZD
- feathercoin_USD
Types
- price - The current price
MtGox
- mtgox_GBP
- mtgox_EUR
- mtgox_USD
Types
- sell - Lowest price that coins are sold at on the market
- buy - Highest price that coins are bought at on the market
- 2bbn - The price of buying 2 BTC
- 2bbr - The price of buying 2 BTC including typical fees
- 2bsn - The price you can sell 2 BTC at
- 2bsr - The price you can sell 2 BTC at including typical fees
- last - The last price a trade was completed at