diff --git a/src/atomic.dex.app.cpp b/src/atomic.dex.app.cpp index b0d772ea26..7b198bd002 100644 --- a/src/atomic.dex.app.cpp +++ b/src/atomic.dex.app.cpp @@ -1192,4 +1192,16 @@ namespace atomic_dex } application::~application() noexcept { export_swaps_json(); } + + QString + application::get_price_amount(QString base_amount, QString rel_amount) + { + t_float_50 base_amount_f(base_amount.toStdString()); + t_float_50 rel_amount_f(rel_amount.toStdString()); + auto final = (rel_amount_f / base_amount_f); + + std::stringstream ss; + ss << std::fixed << std::setprecision(50) << std::move(final); + return QString::fromStdString(ss.str()); + } } // namespace atomic_dex diff --git a/src/atomic.dex.app.hpp b/src/atomic.dex.app.hpp index 0fac2c56a0..306a791ab6 100644 --- a/src/atomic.dex.app.hpp +++ b/src/atomic.dex.app.hpp @@ -138,6 +138,7 @@ namespace atomic_dex Q_INVOKABLE bool create(const QString& password, const QString& seed, const QString& wallet_name); Q_INVOKABLE bool enable_coins(const QStringList& coins); Q_INVOKABLE QString get_balance(const QString& coin); + Q_INVOKABLE QString get_price_amount(QString base_amount, QString rel_amount); Q_INVOKABLE bool place_buy_order(const QString& base, const QString& rel, const QString& price, const QString& volume); Q_INVOKABLE bool place_sell_order(const QString& base, const QString& rel, const QString& price, const QString& volume); Q_INVOKABLE void set_current_orderbook(const QString& base); diff --git a/src/atomic.dex.mm2.api.cpp b/src/atomic.dex.mm2.api.cpp index b3851b8d0a..5b988b984d 100644 --- a/src/atomic.dex.mm2.api.cpp +++ b/src/atomic.dex.mm2.api.cpp @@ -348,7 +348,7 @@ namespace mm2::api j.at("zcredits").get_to(contents.zcredits); boost::trim_right_if(contents.price, boost::is_any_of("0")); - contents.price = adjust_precision(contents.price); + contents.price = contents.price; contents.maxvolume = adjust_precision(contents.maxvolume); }