diff --git a/src/cutecoin/core/account.py b/src/cutecoin/core/account.py
index a85a4c3c9e48486aebb56b35b3b32f1f2b4fe65b..5d27613c8be69637c1bce4ccc6bfcf55ef7d22fb 100644
--- a/src/cutecoin/core/account.py
+++ b/src/cutecoin/core/account.py
@@ -41,6 +41,7 @@ class Account(object):
         self.dead_communities = dead_communities
         self.wallets = wallets
         self.contacts = contacts
+        self.referential = 0
 
     @classmethod
     def create(cls, name, communities, wallets, confpath):
@@ -103,8 +104,32 @@ class Account(object):
         return community
 
     def set_display_referential(self, index):
-        for w in self.wallets:
-            w.set_display_referential(index)
+        self.referential = index
+
+    def units_to_ref(self):
+        def units(units, community):
+            return units
+
+        def relative(units, community):
+            ud = community.dividend()
+            relative_value = units / float(ud)
+            return relative_value
+
+        def units_to_zero(units, community):
+            monetary_mass = community.monetary_mass()
+            to_zero_value = units - (monetary_mass / 2)
+            return to_zero_value
+
+        def relative_to_zero(units, community):
+            monetary_mass = community.monetary_mass()
+            ud = community.dividend()
+            relative_mass = monetary_mass / float(ud)
+            relative_value = units / float(ud)
+            to_zero_value = relative_value - (relative_mass / 2)
+            return to_zero_value
+
+        referentials = [units, relative, units_to_zero, relative_to_zero]
+        return referentials[self.referential]
 
     def set_walletpool_size(self, size, password):
         logging.debug("Defining wallet pool size")
diff --git a/src/cutecoin/core/community.py b/src/cutecoin/core/community.py
index a28ef1d6c3d5e2b2c818d018d3289e6f3c65cf73..d63eef724528945f2089314d1fd451201704b9af 100644
--- a/src/cutecoin/core/community.py
+++ b/src/cutecoin/core/community.py
@@ -131,6 +131,14 @@ class Community(object):
         else:
             return 1
 
+    def monetary_mass(self):
+        try:
+            block = self.request(bma.blockchain.Current)
+            return block['monetaryMass']
+        except ValueError as e:
+            if '404' in e:
+                return 0
+
     def _peering_traversal(self, peer, found_peers, traversed_pubkeys):
         logging.debug("Read {0} peering".format(peer.pubkey))
         traversed_pubkeys.append(peer.pubkey)
diff --git a/src/cutecoin/core/wallet.py b/src/cutecoin/core/wallet.py
index 74429851ffb98b6e389dc5bdbc28eed5ad4d1bfd..d69a379c9b422e57533723566c0c0ae2115f00e0 100644
--- a/src/cutecoin/core/wallet.py
+++ b/src/cutecoin/core/wallet.py
@@ -146,12 +146,6 @@ class Wallet(object):
         self.pubkey = pubkey
         self.name = name
         self.caches = {}
-        self.referentials = [self.value,
-                             self.relative_value,
-                             self.value_from_zero,
-                             self.relative_from_zero
-                             ]
-        self.referential = self.referentials[0]
 
     @classmethod
     def create(cls, walletid, salt, password, name):
@@ -210,21 +204,6 @@ class Wallet(object):
             value += s.amount
         return value
 
-    def relative_from_zero(self, community):
-        value = self.value(community)
-        ud = community.dividend()
-        relative_value = value / float(ud)
-        return relative_value
-
-    def value_from_zero(self, community):
-        value = 0
-        for s in self.sources(community):
-            value += s.amount
-        return value
-
-    def set_display_referential(self, index):
-        self.referential = self.referentials[index]
-
     def tx_inputs(self, amount, community):
         value = 0
         inputs = []
diff --git a/src/cutecoin/gui/currency_tab.py b/src/cutecoin/gui/currency_tab.py
index e7747e512c35e0113ce79b3ba536f9a025981130..0a1e15165878f12c61b305e9719c4fa642f121e4 100644
--- a/src/cutecoin/gui/currency_tab.py
+++ b/src/cutecoin/gui/currency_tab.py
@@ -221,3 +221,10 @@ class CurrencyTabWidget(QWidget, Ui_CurrencyTabWidget):
         if self.table_history.model():
             self.table_history.model().set_period(ts_from, ts_to)
             self.table_history.model().invalidate()
+
+    def referential_changed(self):
+        if self.table_history.model():
+            self.table_history.model().dataChanged.emit(
+                                                     QModelIndex(),
+                                                     QModelIndex(),
+                                                     [])
diff --git a/src/cutecoin/gui/mainwindow.py b/src/cutecoin/gui/mainwindow.py
index 260771bba0ea19747d46514a03acf372ebdd34bd..c667e433f4d55ea80647f58e930b10890e18bdc7 100644
--- a/src/cutecoin/gui/mainwindow.py
+++ b/src/cutecoin/gui/mainwindow.py
@@ -109,6 +109,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
     def referential_changed(self, index):
         if self.app.current_account:
             self.app.current_account.set_display_referential(index)
+            self.currencies_tabwidget.currentWidget().referential_changed()
 
     def action_change_account(self, account_name):
         self.busybar.show()
diff --git a/src/cutecoin/models/txhistory.py b/src/cutecoin/models/txhistory.py
index 5374ee0a99cba51ed977cb69cc9472c75b69816b..e040966f58a0e4a182310944717430d4f2047aa9 100644
--- a/src/cutecoin/models/txhistory.py
+++ b/src/cutecoin/models/txhistory.py
@@ -89,7 +89,9 @@ class HistoryTableModel(QAbstractTableModel):
         date_ts = self.community.get_block(tx[0]).mediantime
         date = QDateTime.fromTime_t(date_ts)
 
-        return (date.date(), sender, "", "{0}".format(amount), comment)
+        amount_ref = self.account.units_to_ref()(amount, self.community)
+
+        return (date.date(), sender, "", "{0}".format(amount_ref), comment)
 
     def data_sent(self, tx):
         amount = 0
@@ -109,7 +111,9 @@ class HistoryTableModel(QAbstractTableModel):
         date_ts = self.community.get_block(tx[0]).mediantime
         date = QDateTime.fromTime_t(date_ts)
 
-        return (date.date(), receiver, "-{0}".format(amount), "", comment)
+        amount_ref = self.account.units_to_ref()(-amount, self.community)
+
+        return (date.date(), receiver, "{0}".format(amount_ref), "", comment)
 
     def data(self, index, role):
         row = index.row()