1 Introduction

For centuries, economists have studied the diverse and evolving forms of money, whether stones, shells, pieces of clay or metal, gold and silver coins, banknotes, paper currency, to even cigarettes used in concentration camps (Radford, 1945). What all these media of exchange have in common is their liquidity, allowing to pay immediately for the purchase of goods, services, and real or financial assets, as well as the implied trust among their users to represent and store value. Indeed, liquidity and trust are the defining attributes of anything material or digital that could possibly serve as money.

A very recent such innovation that implements a blockchain technology within a particular poor locality has become known as ‘community inclusion currency’ (or CIC). CIC, sometimes also labelled as digital CIC, is a blockchain-operated variant of the much older and more generic concept of a ‘community currency’, or equivalently, ‘complementary currency’, ‘parallel currency’ and ‘local currency’.Footnote 1 Non-digital community currencies have also been known in the monetary literature as scrip. Timberlake (1987), p. 439, dates back the early use of scrip in the United States (US) to the rise of coal mining and lumbering as major industries shortly after fractional coinage was stabilized around 1885. He (ibid, p. 440) defines scrip as “a generic term for the issue of localized medium of exchange that is redeemable for goods and services sold by the issuer”. According to him (ibid, p. 440), ‘printed cards or “scraps” of paper’, originally, and ‘metallic tokens’, later on, have been the material form of scrip.

By augmenting liquidity and, hence, trade and economic growth, in an isolated and poor community within a developing country, digital CICs have the potential to increase exchange transactions and incomes and reduce poverty, via a private mechanism made available to the population further and beyond any active humanitarian or government aid programs. The aim of the present paper is to explore this potential of modern blockchain-based CICs by focusing on a specific case study of an empirical socio-economic interest, namely, the Grassroots Economics initiative developed by Will Ruddick in poverty-stricken regions of present-day Kenya (Ruddick, 2020). In our work, we, however, take a more fundamental and interdisciplinary approach to the design and analysis of similar CIC mechanisms that outgrows the specificity of the Grassroots Economics project. In effect, this broader approach allows us to discuss generic modeling and to infer from the available database transaction patterns of heterogeneous types of agents at a meso-level, which we consider to be the most meaningful for our purposes.

Ruddick (2020) highlights four distinguishing characteristics of community currencies: they (i) are issued by a community organization; (ii) cannot be used outside the community; (iii) bear zero interest rate (like money); (iv) encourage the community to help each other. Taking the well-known four key functions of state- or central-bank-issued money as a parallel, CICs meet two of them, namely, medium of exchange and unit of account. They do not meet the remaining two, those of store of value and standard of deferred payment, except for a very short term. Nevertheless, the voluminous literature on traditional and blockchain forms of scrip (e.g., Eichenbaum & Wallace, 1985; Timberlake, 1987; Studer, 1998; Stodder, 2000; Greco, 2002; Marshall & O’Neill, 2018; Amato & Fantacci, 2020; García-Corral et al., 2020) suggests that the public, at least in times without economic turbulence, will accept a privately-issued currency as a complement to—or even temporary substitute for—government-issued legal tender (especially when the latter is in supply shortage) without the need for a discount.

In this paper, we contribute to the emerging blockchain literature from a perspective that synthesizes work in computer science and systems engineering with work in economics. These ‘within discipline’ approaches to examine, emit, maintain and operate monetary standards, in their old and new forms, have generally developed in separation and without much interaction and cross-influence. Consequently, it is strange to see nowadays that, when reading such type of studies, different terminology is often used to denote the same phenomenon or notion. We also attempt hereafter to bridge this terminology gap across the two disciplines.

More importantly, we contribute to this nascent, but diverse and exploding, literature by ‘grounding’ it into more economics, in both a theoretical and a quantitative sense. To do so, we simulate the Grassroots Economics Foundation’s CIC implementation in Kenya, employing a graph-based dynamical system model from computer science, which is also adapted to suit frameworks and interpretations that are standard in traditional, non-blockchain-based monetary economics. A key novelty of our approach is to provide rationalization for this particular CIC implementation within the logic of an economic analysis of revealed preferences departing from a meso-level, i.e., in-between the conventional micro- or macro-perspectives in classical and modern economics. In effect, we essentially elicit the heterogeneous utility of 50 types of agents from their behavior as encoded in the dataset of real-time transactions at our disposal, providing illustrations and interpretations.

The paper is further organized as follows. We begin, in Sect. 2, by outlining the closest related literature, while Sect. 3 presents our modeling approach. Section 4 then walks the reader through the model blocks, providing technical detail as well as economic intuition with regard to their internal structure and external links. Section 5 summarizes the main results from our simulation runs and proposes an economic analysis, interpretation and discussion on what is novel in our approach and findings. Section 6 concludes and an online appendix provides additional technical detail.Footnote 2

2 Literature Review

We split this section into four subsections, each reviewing briefly the following aspects related to our study:

  1. (1)

    Popular historical cases of scrip usage;

  2. (2)

    The analogy of CICs to a sort of local or regional currency board;

  3. (3)

    The typical failure of foreign aid for development provided by governments, international organizations and nongovernmental organizations (NGOs), and hence the need for a complementary private market-based mechanisms as those offered by CICs;

  4. (4)

    The cadCAD simulation software for dynamical systems we employ, and why, with view to its usual alternatives in scientific exploration.

We highlight them in this order next, in respective subsections. In fact, the headings and content of these four subsections also reflect the ‘thread’ holding together our main argument in structuring and interpreting the paper and its key results.

2.1 Blockchain CICs as the Modern Form of Various Old Scrip

Scrip has a long history of use in many countries when the legal tender was lacking, insufficient or inflated. In some instances, such as with US mining and logging towns, company scrip was acceptable at only-company stores, and discounted at such a rate that it made individuals entirely dependent on the company they worked for, ensuring their ‘allegiance’. Scrip, if available for redemption to currency, was in general converted at an exchange rate significantly below face value. A well-known example in Austria during the Great Depression of the 1930s was the so-called Wörgl currency (see, e.g., Greco 2002). This scrip took its name from the town which began issuing it in July 1932. The latter author bases his article on three original reports and concludes that the Wörgl currency improved the financial condition of the local (parish) government that issued it as well as the general health of the local economy during the time it was allowed to circulate.

Scrip in modern times has also had some successful uses, specifically in the form of Canadian Tire Dollars, gift cards and gift certificates. Canadian Tire Dollars are a form of intermediation between government currency and interest-bearing assets that has been used by customers in the mid-1980s in Quebec (Eichenbaum & Wallace, 1985). Another long-lasting example is the so-called WIR Bank, which was founded in Zurich, Switzerland, in 1934 as the Economic Circle Cooperative, a large-scale mutual credit clearing system that has survived for almost a century. Not much was known about its history and operations until the late 1990s, when Economics Professor Tobias Studer of the University of Basel published his book, WIR in unserer Volkswirtschaft (translated as WIR and the Swiss National Economy (Studer, 1998, 2006). One of the conclusions Studer reaches is that the WIR system serves not only its own membership, but also the entire economy; the main reason behind is that, similarly to any other barter trade arrangement, it supplements conventional economic trade and thereby facilitates jobs-creating transactions that otherwise would not materialize.

But one does not have to go much back into history: the Global Financial Crisis (GFC) of 2007–2009 has discredited the official banking and monetary systems and has sparkled the proliferation of private cryptocurrencies (see, e.g., our views in Clark & Mihailov, 2019) and community interest currencies: another CIC acronym, replacing ‘inclusion’ with ‘interest’ in the middle. Among the most popular and successful examples is the Bristol Pound, set up by a group of campaigners and financial activists in 2012. This scheme was a network of over 2000 individuals and independent businesses preferring to use both digital and paper local currency to trade in Bristol, keeping this CIC circulating inside the city and thus energizing the regional economy. The digital currency ran until July 2020, when it was retired to make way for a new scheme, Bristol Pay. Paper Bristol Pounds continued to circulate until their expiry in September 2021.Footnote 3

García-Corral et al. (2020) is a very comprehensive modern study that first reviews world experiences with CICs (see, in particular, Tables 1 and 2, pp. 2 and 3, respectively) and then focuses on the case of the province of Almería in Spain, and three popular CICs there, namely the Pita, the Banco del Tiempo (BdT–or Time Bank), and the town of Almócita, “a small rural town with a total of 169 inhabitants in the province” (p. 6). The study attempts to assess “the feasibility of introducing a complementary currency in a small municipality as a method of sustainable local development”.

Table 1 State variables for the economic system simulation
Table 2 Heterogeneous agent subpopulation clusters sorted from payer individual CIC wallet balance (s_bal in column 4), in descending order in terms of their spending share by business sector (columns 6–13), as derived from the CIC historical data from January to May 11, 2020

Hundreds of community currencies have been created (Lietaer et al., 2012), however the vast majority of them have ceased to be sustainable due to the lack of market acceptance, similar to many cryptocurrency projects nowadays. Without a mechanism for redeeming the community currency back into a trusted means of exchange, the lack of trust in the currency and its utility is often a contributing factor in its demise. One of the other issues with community currency projects has been the inability to trade with neighboring communities, limiting their potential to promote economic growth. On the positive side, research has found that community currencies can counteract seasonal conditions and increase overall trade (Ruddick, 2020; Stodder, 2000). On the negative side, (Marshall & O’Neill, 2018), who conducted 27 semi-structured interviews with businesses and other Bristol Pound stakeholders, report that the key barriers to ‘localization’ are political or institutional in nature. Examples include support for free trade, the free movement of capital, the power of global corporations, and the ‘expansionary logic of capitalism’.

More recently, the Grassroots Economics Foundation has shown that community currencies can be an effective means of fostering community trade and economic growth. Grassroots Economics is a non-profit foundation that “seeks to empower marginalized communities to take charge of their own livelihoods and economic future.”Footnote 4 The focus of the foundation is on community development through economic empowerment and community currency programs, and beneficiaries include small businesses and people living in informal settlements and rural areas in Africa and Asia. Its goal is “to improve the lives of those who are most vulnerable”. Grassroots Economics has implemented community currency programs in 45 locations across Kenya and assisted with 2 in South Africa, thus helping more than 40,000 small businesses, churches, and schools take an active role in their own economy and development. Recently, they are joining effort with similar organizations, such as Sempo,Footnote 5 in launching CIC trading on a new open source platform across 5 countries.Footnote 6Grassroots Economics started with an initial pilot in 2010 called Eco-Pesa (IJCCR, 2012), and the project has later on moved from paper-based currency into digital CICs. The digital pilot began in Q4 of 2018, and in about a year and a half 24,000 registered users and an average of 1,000 transactions per day have been reached (Grassroots Economics dashboard, 2020).

There are only few papers closely related to ours that quantify the positive effects of injecting liquidity via transfers by donors into a CIC system. In the specific case of the Grassroots Economics Sarafu implementation in Kenya, Mqamelo (2022) uses a randomized control trial study and reports that CIC transfers of a 30 USD equivalent to a treatment group of enrolled users are associated two months later with increases, relative to the control group, of 93.51 USD in beneficiaries’ wallet balance (to put values in a scale, with treatment mean of 2,823.54 USD and control mean of 2,793.36 USD since enrollment), 23.17 USD in monthly CIC income, 16.30 USD in monthly CIC spending, 6.31 USD in average trade size and a 28.43 USD increase in expenditure on food and water. She, however, finds quite important gender differences in favor of men.

2.2 Blockchain CICs Can Be Credible if Designed as a Currency Board

To facilitate economic interpretation, we suggest in this paper that a local CIC can be viewed as an analogy to a nation-wide currency board.Footnote 7 A currency board is a reduced, rule-based monetary policy that operates as if in ‘autopilot’ mode, because there is no option to provide credit to the national government, the commercial banks or state-owned enterprises. Hence, there cannot be monetization of fiscal deficits, or any other sort of inflationary financing from the monetary authority. By design and rationale, in these monetary regimes the backup of the monetary base on the liability side of a central bank’s balance sheet is 100% in terms of the international reserves on the asset side. Thus, an increase in the stock of paper currency in circulation is automatic and fully-backed, i.e., equal to the current account surplus generated by the national economy during a particular period that leads to a corresponding increase in the international reserves. This full backing in a currency board regime is, of course, a device designed not to allow nominal depreciation of the national currency (also known in the monetary literature as debasement or demurrage). In such a sense, the national monetary unit operated via a currency board is guaranteed not to lose its value in terms of the currency of the peg, usually a strong and desirable currency worldwide such as the US dollar or the Euro (formerly, the German mark).

Prominent success stories of currency board regimes are Hong Kong (since 1983) and Bulgaria (since 1997) (Hanke, 2002). Yet in the case of community currencies it is some local authority or private operator that takes the responsibility of circulation and exchange, not the national central bank. Moreover, the backing may not be full, but the CIC exchange rate peg is constant in terms of commitments in goods or services.

2.3 If Trusted, Blockchain CICs Complement Foreign Aid in Poverty Alleviation

The failure of foreign (government or NGO) aid for development purposes has been notorious, and long-established in the economics literature (Osterfeld, 1990; Sullivan, 1996; Ovaska, 2003; Williamson, 2009).Footnote 8 Our paper unifies this theme with the theme of community inclusion currencies, in an effort to explore the benefits of the latter in remedying the major weaknesses of the former. In developing economies, the availability of the national currency often has a low correlation with the local productive capacity or demand, but is to a large extent influenced by external factors, such as trade deficits, foreign interest rates, national debt, and IMF policies (Ruddick, 2020). Instead of providing only aid-based programs to help alleviate poverty, using also CIC-empowered markets to do so and contribute to achieving sustained growth in developing economies is becoming more common (Cooney & Shanks, 2010). One of the issues with many aid-based development programs is the flow of aid funds to individuals in low-liquidity areas right back to city centers and financiers, creating a never-ending cycle of liquidity constraints. Similarly to the case of the Bristol Pound, the goal of CICs and other market-based approaches to reducing poverty and liquidity constraints in poverty-stricken areas is, thus, to close the loop of net cash outflows by providing incentives to keep liquidity in local economies.

Within the standard development aid programs, no much literature exists on new aid innovations, comparable to the community currencies outlined thus far. Udvari & Ampah (2018) state that not all aid is created equal, with some aid not directly beneficial for economic growth, while some targeted aid given to promote innovation and create infrastructure has been shown to drive economic growth. Their literature review suggests that good governance of the receiving country and the institutional background of the facilitator are two leading indicators for aid effectiveness. Udvari & Ampah (2018) also found that innovation funding is currently a small proportion of total aid, but that its impacts on economic growth were positive.

The United Nations Office for the Coordination of Humanitarian Affairs (UN OCHA) operates a Cash and Voucher Assistance (CVA) program, that has expanded as a result of COVID-19 (OCHA, 2021). The program is using technology, such as voice ID, for fund verification, delivery, evaluation, and monitoring. However, this program does not appear to have any local economy incentives. Aker (2015) shows in a randomized experiment in the Democratic Republic of Congo that cash transfers are more effective than in-kind transfers. Hidrobo et al. (2014) finds in a randomized experiment in Ecuador that cash, food vouchers, and food transfers are all effective at improving the quality and quantity of food consumed, however food transfers had the largest increase in calories consumed. The emphasis of community currencies on growing local economies is unique among aid organizations, although as outlined by Udvari and Ampah (2018), there are programs, such as the World Bank’s Digital Economy Initiative for Africa (DE4A), that aim to grow developing economies through digital economy innovation (World Bank, 2021).

2.4 Blockchain CICs Favor Open-Source Code for Computer Simulation

When it comes to dynamical system simulation, the leading software has been, arguably, MATLAB’s Simulink (MathWorks, 1984). Simulink has been around for over 30 years, and is used throughout industry and academia for digital twins, industrial processes, robotics, to name a few use-case categories. Simulink provides a graphical user interface for model building, simulations, analysis, and verification of models. Simulink models can be exported to C, an embedded system programming language often used in industrial applications. There are detailed books on Simulink (Klee & Allen, 2011). However, as successful and widespread Simulink is, it is a closed-source, proprietary tool.

In the distributed ledger technology (DLT) paradigm and ecosystem, open-source software is at a distinct advantage, being able to be shared and integrated without vendor licenses. cadCAD (complex adaptive systems, computer-aided design), in comparison, is a Python-based,Footnote 9 open-source, unified modeling framework for dynamical systems and differential equation simulations. It is capable of modeling systems at all levels of abstraction from Agent-Based Modeling (ABM) to System Dynamics (SD) with the integration of existing data science workflows and paradigms (Block Science, 2019). Despite its relative immaturity, modeling in cadCAD–which we implemented in the present paper–provides the benefits of the open-source community with the ability to seamlessly integrate with the robust Python ecosystem, as well as respecting the DLT ethos.

3 Formalized Model

We study a generic framework of CIC implementation based for illustrative purposes on a recent real-world case study, namely the Grassroots Economics CIC project. Thus, our work falls within the emerging field of Tokenomics (Ruddick, 2020), which is a subset of Cryptoeconomics (Voshmgir & Zargham, 2019). Yet, more fundamentally, we propose an overarching interpretation of our analysis, which is purposefully grounded within the long-existing traditional literature in monetary and development economics, in particular employing the analogy of a CIC system with a sort of regional liquidity-enhancing currency board regime.

In the CIC implementation, xDai (2018), a stable coin backed by the US dollar (USD henceforth) at a constant 1:1 exchange rate, serves as the reserve asset, with CICs being ‘minted’ at a 4 × 1 basis, that is, the addition of 1 xDai (i.e., 1 USD) to the reserve assets enables the injection of 4 new CICs into the system. Moreover, similar CIC implementations in close locations allow for scalability: that is, the CIC whitepaper proposes the ability to link the Grassroots Economics Sarafu CIC with other CICs backed by potentially different reserve assets (Ruddick, 2020). Such a scaling-up of CICs allows creating a flexible, larger system of community currencies via their interoperability. It is made possible by the blockchain technology, which enhances interoperability via automated governance by smart contracts and an open, public ledger for validation.

The model we propose in this paper for studying community inclusion currencies within a complex system approach is visually described in Fig. 1. It is generalized, or generic, and thus contributes to the build-up of a standard framework for developing analogous currency simulations in further related research. For the sake of clarity, we will, nevertheless, keep it specific in our illustrations and simulations, and we, therefore, ‘layer’ it (i.e., decompose and describe the model into components and interactions at various levels, or ‘layers’) in parallel to the real-world case of Grassroots Economics. The blue box (or block) in the diagram shows the mixing process of subpopulations interacting with each other (i.e., the continuous random matching of pairs of agents, in our case, types of agents typically studied in economics, in particular in ‘search’ theory and ABM simulations), and their interactions with the external economy, symbolized by the orange cloud, and with the pink box, or the currency operator. The pink box is the meso-level local economic operator, which is created as an institute in the support of the healthy economic growth of the local economy (the blue box). The pink box economy regulator (or policymaker, in macroeconomic terms) supports the well-being of the blue box economy by providing CIC allocations to individual agents and subpopulations when they join the CIC economy, as well as the mechanisms of converting these allocations and governance policies. The green box is an ‘algorithmic monetary policy’ rooted in an underlying bonding curve (Zargham et al., 2019), which is analogous to the functioning of a currency board for a national economy, as was noted–except that a CIC may not necessarily maintain a constant exchange-rate peg, yet this is desirable to generate trust in the CIC system and increase its use. The green box is a regulator (or instrument, here a rule-based automatic mechanism) of the pink box (or policymaker), which is implementing policies affecting the blue box. The goal of our simulations is to help guide the currency operator symbolized by the pink box in managing (on ‘autopilot’) the green box mechanism to keep the local economy symbolized by the blue box healthy, and promote (regional) economic growth. All parts of this ‘ecosystem’ (i.e., the model ‘environment’, as is the customary term in economic theory) must be working in harmony to create homeostasis in the system (i.e., some notion of ‘equilibrium’, dynamic or evolutionary, that leads to long-run stability or sustainability), essentially by easing the liquidity constraints prevalent in poor local economies. We describe each of these model blocks more thoroughly in the subsequent subsections.

Fig. 1
figure 1

Generic model of a CIC system

3.1 Mixing Process

The community mixing model, as shown in the blue box in Fig. 1, is a topological object representation of the interactions of subpopulations in a local economy. By modeling the trends and interactions of subpopulation clusters, we can observe system metrics from a meso-level to inform policy decision and economic interventions.

To represent the stochastic process that connects the CIC economy (i.e., ‘implementation economy’ in the language of computer science) to the national economy (i.e., ‘wider economy’), we rely on a mixing process of the respective agents (‘intra’ and ’inter’ subpopulations) who interact into the networked graph model evolving over time. For details, see the appendix.

To employ a subpopulation approach at a meso-level, as argued (Dopfer et al., 2004), we take a ‘graph zoom’ operation, bundling agents together based on their ‘likeness’. Nodes are constant, with edges being transitive. The algorithm we use for this graph zoom operation is Kmeans Clustering (Lloyd, 1982).

To compute the clusters, we take the Grassroots Economics CIC full population of actual USD transaction data from January 1 through May 11, 2020 in xDai data. The data contains the following information:

  • Payer individual location

  • Payer individual business type

  • Receiver individual location

  • Receiver individual business type

  • Weight, which is CIC tokens exchange amount

  • Payer individual CIC wallet balance (s_bal)

  • Receiver individual CIC wallet balance (t_bal)

Based on our descriptive statistical analysis and employing the Gap Statistic measure (Tibshirani et al., 2001), we determined that (‘optimally’) 50 clusters are representative of the subpopulations in our CIC sample, see Fig. 2. 50 clusters was, indeed, our upper bound in the tested grid, but we did not attempt to search above it due to computational limits. Once selecting numerically these 50 clusters, or agent types within our sample, all the flows inside each cluster become part of a self-loop flow. For example, within cluster 1, agent A can conclude transactions with agent B: these will not be accounted for as flow across clusters, as they constitute intra- (not inter-) cluster interactions.

Fig. 2
figure 2

Gap statistic of tested clusters of CIC-user individuals used to infer the ‘optimal’ number of subpopulations or agent types in our sample

We calculated the starting native currency of the subpopulations from the 1st to the 3rd quartile of the cluster source. Starting tokens are the respective cluster’s median source balance. Beginning with these subpopulation calculations, we can ‘typify’ the blue box mixing process rooted in actual data that was computed from agent-level interactions brought up to subpopulation level.

3.2 Currency Operator

The pink box, as described above in Sect. 3.1, is the meso-level economic operator whose purpose is to promote a healthy and growing local economy, i.e., the blue box. The currency operator, in the particular case of our generic-model illustration, Grassroots Economics, issues CIC to new users, with the current rule of 400 CICs per each new agent (Ruddick, 2020), provides a mechanism for conversion at 1:1 into Kenyan Shilling, and implements CIC ‘monetary policy’. There is a logical net outflow from the system caused by the currency operator giving CICs to agents, and allowing the redemption of their tokens. This causes a classic inventory control problem, i.e., ensuring that enough CIC (i.e., token money) and enough fiat (i.e., fiat money) exists to manage the currency operator’s transactions and provide liquidity into the CIC system. There are several mechanisms to manage net outflow, such as external donor drip, which is the current process illustrated in Fig. 1, as well as the introduction of transaction fees. Below we describe both these mechanisms embedded into our simulation model, and the disbursement and buyback policies. Of course, the range of CIC-spending possibilities in our analysis is certainly limited by the particular location of the data collections and its dominant rural economy features in process of development (Fig. 3).

Fig. 3
figure 3

Subpopulation CIC disbursement

The inventory_controller policy addresses the inventory control problem of the system. There is a clear tension between the operator CIC balance and the operator fiat balance, as the system has a natural net outflow. Conceptually, we can think of this as a heuristic ‘monetary policy’ conservation allocation between fiat and CIC reserves. We have created an inventory control function to test if the current balance is within an acceptable tolerance. For the calculation, we use the following 2 variables: current CIC balance and current fiat balance; along with 2 parameters: desired CIC and variance—see Fig. 4 for the allocation policy. For the purposes of our model simulation, we assume that the Grassroots Economics operator begins with 100,000 of fiat and CIC each, as initialization.

Fig. 4
figure 4

Pseudocode representation of the heuristic inventory control algorithm

If the controller wants to mint, the amount decided from the inventory controller, \(\Delta R\) is inserted into the minting equation, as described in more detail in the bonding curve section 3.3. There is a built-in process lag of 15 days before the newly ‘minted’ or ‘burned’ CIC is added to the respective operator accounts. This lag is a result of the financial lag time of bonding/minting funds and clearing this funds through the traditional banking system. The result of the inventory_controller behavior policy are directives to mechanisms to update the system variables according to whether any minting or burning occurred. For disbursement, we assume that every subpopulation has already started off with their CICs, and we assume distribution of a total of 1,000 to each subpopulation every 30 days. There is also a potential for allocation to occur based on a measure of individual agent centrality.

3.3 Currency Regulator–Bonding Curve

A bonding curve—see Fig. 5—is an automatic mechanism of market-making and liquidity provision in token economies (Zargham et al., 2019), somewhat analogous to a currency board in national economies, as we argued. The key difference is that the currency board maintains a constant exchange-rate peg, by definition and mechanism of operation, whereas a CIC system may not necessarily keep the peg constant, which is nevertheless strongly desirable to maintain the trust into the token and use it actively for transactions. We now briefly describe how the CIC bonding curve works, displaying the high level mathematical representations, but detailed explanation of the underlying mathematics and protocol can be found from Zargham’s previous work (Zargham et al., 2019, 2020) as well as from the Bancor protocol (Hertzog et al., 2018). It is not by chance that the Grassroots Economics CIC project uses the ‘Bancor protocol’, named after Keynes’ 1944 Bretton Woods international reserve currency proposal, for the underlying bonding curve and smart contracts (Fig. 6).

Fig. 5
figure 5

Bonding Curve: Illustration of CIC Bancor Implementation. Bonding curves are continuous liquidity mechanisms used as market makers and liquidity providers. In this figure, the automated adjustment of token price based on the supply and demand of the xDAI reserve and the number of issued tokens is illustrated. Such a mechanism is analogous to a currency board, but without change in the exchange rate peg: to keep the peg constant, an increase (decrease) of international reserves leads automatically to a corresponding increase (decrease) of the legal tender in circulation

Fig. 6
figure 6

CIC bonding curve: a stock and flow diagram

An important component of a bonding curve is its conservation function, a measure of a property that is invariant, which means that the value of the conservation function remains unchanged under the allowable system transitions. For our model, the conservation function is:

$$\begin{aligned} V(S,R) = \frac{S^\kappa }{R} \end{aligned}$$
(1)

with R being the xDai in Reserve, S as the Total Supply of CIC tokens in the system, and \(\kappa \) the leverage applied to the bonding curve. In the absence of Fees, \(V(S,R) = V_0\) is constant, where \(V_0 = \frac{S_0^\kappa }{R_0}\) and \(S_0\) and \(R_0\) are the initial Supply and Reserve, respectively.

The deposit to mint equations are deposit \(\Delta R\) xDai to mint \(\Delta S\) CIC tokens

$$\begin{aligned} \Delta S = mint\big (\Delta R; (R,S)\big )= S\big (\root \kappa \of {(1+\frac{\Delta R}{R})}-1\big ) \end{aligned}$$
(2)

The burn to withdraw equations are burn \(\Delta S\) CIC tokens to withdraw \(\Delta R\) xDAI

$$\begin{aligned} \Delta R = withdraw\big (\Delta S; (R,S)\big )= R\big (1-(1-\frac{\Delta S}{S})^\kappa \big ) \end{aligned}$$
(3)

System level initialization parameters shown below were derived based on simulation, analytical methods, and discussions with the Grassroots Economics team.

  • \(R_0= 40,000\) xDAI to generate \(S_0\) initial supply

  • The ‘Connector Weight’ in Bancor terms maps to the concept ‘Target Reserve Ratio’ \(\rho =\frac{1}{\kappa }=\frac{R}{P \cdot S}\)

  • Conversion rate between USD and Kenyan Shilling is approximately 1:100

  • Assume \(P_0 = 1/100\) in order to ensure spot price is the right order of magnitude

  • Leverage applied to the bonding curve \(\kappa =4\) above implies \(S_0 = 4 \times 100 \times 40,000 = 16\, Million\) for the initial supply of CIC tokens

Figure 7 shows the base bonding curve case as determined by the originally suggested values by Grassroots Economics. The bonding curve mathematics are relatively new but not novel in this project, with widespread deployment not prevalent. In the developmental economic context, the success of the Grassroots Economics project could be the first deployment of a bonding curve outside a pure token economy implementation.

Fig. 7
figure 7

CIC bonding curve with initialization values

4 System Walkthrough

We provide in this section an account of the model blocks, with some technical detail as well as economic intuition with regard to their internal structure and external links.

4.1 Layers in the cadCAD Simulation

In the cadCAD simulation methodology, we operate on four layers: Behavior Policies, Mechanisms, States, and Metrics. We can describe the interaction of these four layers through a differential specification using system modeling syntax (Zargham, 2019). Information flows do not have explicit feedback loop unless noted: see Fig. 8. Policies determine the inputs into the system dynamics, and can come from user input (e.g., instrument variables in macro-modeling), observations from the exogenous environment, or algorithms. Mechanisms are functions that take the policy decisions and update the states to reflect the policy level changes. States are variables that represent the system quantities (conventionally, stock or state variables in dynamic economic theory and simulation) at the given point in time, and Metrics are computed from state variables to assess the health of the system (i.e., they resemble certain policy criteria or guiding measurements in economics). Metrics can often be thought of as KPIs, or Key Performance Indicators. See Fig. 9 for a snippet of the partial state update blocks and Table 1 for a listing of the states of the system.

Fig. 8
figure 8

Differential specification of the system

Fig. 9
figure 9

Example: Partial State Update Blocks

4.2 Order of Events

In our system–see Fig. 8–we have 4 separate parts of the model: Exogenous signals, KPI, System, and Currency Development Entity. Each part comprises 1 or more partial state update blocks, which when taken in sequence, create state update, or one increment of a timestep. Exogenous signals are a substep of the system with mechanisms that do not have policies. System is the Fig. 1 blue box, or mixing process interactions. Currency Development Entity is the policies and mechanisms for the currency operator, or the Fig. 1 pink and green boxes, whereas KPI are the system metrics. Below, we enumerate the substeps of a system timestep.

  1. (1)

    Calculate the starting balance of the individual subpopulations every 30 days, the subpopulations actual 30 day spend, as well the periodic donor shilling drip, and clearing out the previous simulation step network mixing process activity. The starting balances and 30 day spend mechanisms are used to create variables that serve as a basis to simulate the ‘aggregated agent’ withdrawal based on the Grassroots Economics CIC withdraw policy.

  2. (2)

    The System is our graph mixing process. Individual subpopulations will interact with each other to simulation inter-subpopulation value flows. With the graph structure discussed in Sect. 3.1, the first behavior, choose_agents, takes a uniform random sample of 46 from the 51 subpopulations (50 clusters plus the external economy) for the payer subpopulations and another uniform random sample for the receiver subpopulations. The behavior policy then calculates the payer demands based on a Gaussian distribution computed from the μ actual CIC transactions involving the subpopulation and the σ of the actual transactions. If the payer is the external economy node, we compute a Gaussian distribution based on the average of the average subpopulation μ and σ. To calculate the payer subpopulation’s spending by business type (or sector), we take a uniform distribution of the source subpopulations business types (or sectors) and use their probability of occurrence, i.e., Food and Water type occurs 41% of the time in subpopulation 1 inter-cluster interactions, so we will choose this spending sector 41% of the time. Note that for the scope of our simulations, we are assuming each subpopulation interacts once with one business type for each timestep. As the result of this behavior policy, we update the mixing graph with the edges that are interacting, their demand, utility, and the fraction of demand in CIC. For simulation purposes, we are assuming that the fraction of demand for a transaction is 50% fiat, 50% CIC, where 100% fiat is if the subpopulation is interacting with the external environment.

  3. (3)

    The second behavior of the system, spend_allocation, is calculated based on the desired interacting subpopulation’s demand, spending sector, and liquidity constraints, i.e., the amount of CIC and shilling each subpopulation has available. We iterate through the desired demand and allocate based on a stack ranking of utility \(v_{i,j}\) over demand \(\frac{v_{i,j}}{d_{i,j}}\) until all demand for each subpopulation is met or subpopulation i runs out of CIC and shilling. In the mechanisms, we then update the graph with the actual spend between agents.

  4. (4)

    The third and final behavior in the Systems section is the withdraw_calculation. Per Grassroots Economics policy (Ruddick, 2020), individual users are able to withdraw up to 50% of their CIC balance if they have spent 50% of their balance within the last 30 days at a conversion ratio of 1:1, meaning that for every one token withdraw, they receive 1 in shilling. For our subpopulation model, we are assuming that the agents want to withdraw as much as they can. One generalization we make from the system is that agents will have their ‘30-day clocks’ starting when they have joined the system. For simplification, in our model, we are assuming that each subpopulation is on the same 30-day time clock. This produces jagged withdrawal graphs, but the net flows of the system are the same. This is one of the most important control points for the Grassroots Economics CIC operator. The more people withdraw CIC from the system, the more difficult it is on the system. The more people can withdraw, the better the adoption, however. The inverse also holds true: the fewer individuals can withdraw, the lower the adoption. 30,000 is the max allowable amount to be withdrawn per 30 days. The mechanisms based on the behavior policy update, the operator fiat and CIC balances, the aggregated withdraw state, as well as the individual subpopulations, are based on their observed activity.

  5. (5)

    The next sequence in our partial state update blocks is the Currency Development Entity. This sequence has two behaviors, disbursement_to_agents and inventory_controller, as described in Sect. 3.2. In disbursement_to_agents, CIC is distributed to the subpopulations as a means of Universal Basic Income, or UBI.

  6. (6)

    The final section of our system model is the KPI’s partial state update blocks. This policy group has two behaviors, kpis and velocity_of_money. The kpis behavior policy iterates through the network model edges to ascertain the subpopulation edge weights of demand and spend for the current timestep. The policy function aggregates the spend and demand for a system level view of how much spend and demand occurred on the network during the timestep as well as spend over demand, to see how much of the demand was fulfilled. A spend/demand ratio (‘spend over demand’ in the algorithm) below 1 means that not all demand was satisfied, whereas a value of 1 denotes that all subpopulation wants were met. The behavior policy has three subsequent mechanisms that update the metrics variables of KPIDemand, KPISpend, and KPISpendOverDemand with the timesteps results. Behavior policy velocity_of_money calculates the velocity of money per timestep via indirect measurement. Research has shown that the velocity of local currencies can be as much as five times higher than their corresponding national currencies (de la Rosa & Stodder, 2015).

    $$\begin{aligned} V = \frac{PT}{M} \end{aligned}$$
    (4)

    defines the velocity of money in a standard way as in monetary economics, where V is the velocity of money for all agent transactions in the time period examined, P is the average price level, T is the aggregated real value of all agent transactions in the time period examined, and M is the average money supply in the economy in the time period examined. The velocity_of_money mechanism updates the metric variable of VelocityOfMoney.

5 System Run, Simulation Results, Validation and Economic Insights

We now turn to the simulation run of the described system and algorithm and the obtained technical results and validation, as well as to the key economic insights gained from our computational exercise.

5.1 System Run

cadCAD provides the ability for Monte Carlo runs that reflect the description of our model and algorithm thus far. Due to the stochastic nature of our system, Monte Carlo runs will provide a more accurate readout on how a system will perform. Due to the size and complexity of the model with the subpopulations, we ran 5 Monte Carlo runs over 100 timesteps to produce time series quartile charts of Subpopulation Spend, KPISpendOverDemand, VelocityOfMoney, and operator CIC and fiat balances.

5.2 Simulation Results

The results from the simulations (Clark, 2020) are outlined graphically in Figs. 10, 11, 12, 13 and 14. In particular, what one can observe in comparing Figs. 13 and 14 is the predicted net outflow of fiat from the system, or enable some sort of fee structure. We already discussed evidence earlier for the inferred inferiority of CIC to real-world money, and we now corroborate this evidence even more clearly. This leads us again to clarify that, while CIC systems can be beneficial in terms of increasing local liquidity, trade and growth in an isolated poor region, thereby alleviating poverty and dynamizing the economic turnover in a community, we view such CIC systems as a transitional arrangement until the community is ultimately integrated into the national and global economy. For the sake of this illustration, and with a desire for this sort of simulation model to not be completely ‘driverless’, the rough heuristic inventory control algorithmic policy defined above was turned off for the simulations run.

Fig. 10
figure 10

Aggregated inter-subpopulation spend. This figure shows the aggregated inter-subpopulation spend per timestep of the simulation. As can be seen, after the system initialization of agent spend and economy outflows, the spend stays relatively constant, despite no new agents introduced

Fig. 11
figure 11

Aggregated inter-subpopulation KPI spend over demand. A value of 100 means that all demand is fulfilled, while a value of less than 100 shows us that not all subpopulation wants were met, based on our stochastic demand function

Fig. 12
figure 12

Aggregated inter-subpopulation velocity of money. Very similar to trend and insight from Fig. 10

Fig. 13
figure 13

Operator fiat balance. Since the CIC system in this simulation is net outflow, relying on donations, the balance is downward trending, as expected. As the donations and agent withdrawal schedules were coded into the simulation, their inputs were deterministic, hence the absence of the IQR bands in the figure. The subsequent introduction of fees, see Sect. 6.2, will be focused on making this balance stationary or trending slightly positive

Fig. 14
figure 14

Operator CIC balance. As a result of minting and buybacks, the CIC balance is increasing, as expected. As the donations and agent withdrawal schedules were coded into the simulation, their inputs were deterministic, hence the absence of the IQR bands in the figure

5.3 Validation

Due to the normative design purpose of the simulation, standard backtesting procedures as are commonly used in econometrics were not applicable. As the meso-layer simulation model was constructed to aid in the design of a CIC system, with the observed and expected actor behaviors built into the simulation run, evaluation was conducted by observing the metrics of KPIDemand, KPISpend, KPISpendOverDemand, and VelocityOfMoney, ensuring they were exhibiting the desired behavior of stationary to moderate growth, see Table 3 for descriptive statistics for the simulation run, and Figs. 10, 11 and 12 for plots of the KPISpend, KPISpendOverDemand, and VelocityOfMoney, respectively.

Table 3 Simulation run KPI descriptive statistics

5.4 Economic Insights and Related Discussion

Having inferred, as just described, by computational methods the 50 ‘optimal’ clusters, or heterogeneous types of agents, we next propose an economic interpretation and related analysis that is novel in the literature. More precisely, we view the information in Table 2 as reflecting–in the recorded CIC transactions–the ‘revealed spending preferences’ by type of agent, or subpopulation cluster. In turn, as is typical in economics, revealed preferences can be further related, more fundamentally, to the underlying utility function. Consequently, we can outline several dominant types of agents by their CIC-spending behavior and denote them as ‘utility types’ by revealed preferences, as described by the fraction of CIC-transactions spent in the several business sectors in the columns of Table 2. Looking through the table, one can see that the spending patterns by sector as well as by weight, i.e., the value of the CIC-balance transacted (ranging from a minimum of 20 to a maximum of 62,000), is quite diverse. What a high CIC-balance reflects is trust in the CIC system by the respective agent type, and its active use to transact. Judging by the third column, which shows the relative share in %, there are only 10 out of the 50 subpopulation clusters, or CIC-spending utility agent types, that have surpassed 1% of relative weight. The remaining 40 utility types have each spent (much) less than 1%. This is an indication that only about one fifth of the CIC users (measured by utility type here, more precisely) had considerable trust in the system, and used it for a relative volume of transactions higher than 1%. It confirms that substitutes for real-world money such as the CIC implementation we study here are indeed perceived as inferior by people relative to real-world money. In this sense, we would claim that CIC systems can be transitional liquidity provision and trade enhancing institutions in a community, and therefore they are an important, but interim and auxiliary way to enhance economic growth locally and lift out of poverty. In a long run, though, they will be gradually phased out and replaced by real-world money, once the CIC has completed its temporary liquidity/trade/growth enhancing aim and function. We return to provide further empirical support for this claim of ours shortly.

Looking next on where CIC balances are spent, a striking feature of our transactions dataset reflected in Table 2 is that 10 (out of the 50) clusters save 100% of their respective CIC balances and 3 clusters save 0%. This finding makes economic senses to us: since the users of the Grassroots Economics CIC system are poor people, one fifth of them (again, as measured by utility type) tends to save all of the CIC-balance. Furthermore, the 4 clusters with the most (above 10%) relative weight each save either 100% (2 of them) or a high %, i.e., 70–74% (the remaining 2 of them). This corroborates the general economic interpretation we offered in the preceding paragraph regarding the inferiority of CIC relative to real-world money in the use for transactions and saving purposes by poor people.

Turning to the ‘average’ revealed spending preferences, i.e., for all 50 clusters as a whole, illustrated in Fig. 15, several other key findings with important economic interpretation are worth pointing out. First, indeed saving dominates across the board as a form of using a cluster’s CIC balance, accounting for 47% of the total uses. This result enhances our earlier conclusion that, for a poor population, an additional balance of CIC money could be largely saved for ‘rainy days’. Second, and unsurprisingly for a poor population, another major use of the CIC balances is for food and water, 25%. This also makes sense: some clusters do not wish to mostly save but also use their CIC to buy essential goods of primary necessity. Third, spending on farming and labor comes next, with 14% on average in our sample, and spending in shops follows, with 7%. Fourth, the remaining spending allocations by sector are relatively minuscule: health CIC spending accounts for 2%, as much as fuel and energy CIC spending, and education CIC spending for merely 1%, while transport CIC spending is even less, on average. Thus, our transactions-data based simulation reveals that most CIC user types would typically save the bulk of their CIC balances or use them in part to also pay for food and water, which amounts to 72% of the total CIC balance uses. The economic intuition behind is not surprising, as we discussed: poor people would tend to spend for essentials and save for ‘rainy days’ any additional (CIC) money they would get.

Fig. 15
figure 15

Average spending shares across all subpopulation clusters, i.e., agent utility types (by revealed preference)

While uncovering the above common pattern, that is, ‘on average’ across the 50 revealed utility types, considering more carefully these types of agents by their CIC-transactions behavior we can distinguish as well a sufficient degree of heterogeneity in spending patterns. Our utility types (or clusters) in Table 2 are ordered in a decreasing value of their CIC-balances (i.e., the s_bal column in the table), and their respective probabilities of transaction occurrence (i.e., columns showing the fractions of total CIC payments) by spending sector are calculated based on the real transactions data in our sample. To illustrate the considerable spending heterogeneity across agent types (which a detailed examination of Table 2 confirms convincingly), we take two high CIC s_bal agent clusters and two low CIC s_bal agent clusters, as shown in Fig. 16.

Fig. 16
figure 16

Two of the highest CIC s_bal clusters (top row) and two of the lowest CIC s_bal clusters (bottom row) represented as heterogeneous agent ‘utility types’ according to their spending habits, or revealed preference, by business sector. The cluster numbers denoting these 4 utility types correspond, of course, to those in Table 2

The figure plots in the top row two such high-spend CIC types with important relative weights (i.e., large transacted CIC balances). While they are both high-spend types, their allocation of spending across business sectors is quite different. This finding reveals that it is hard indeed to generalize our conclusions on revealed preferences even for clusters that would have an important common feature, high CIC spending here, in particular. The same applies for the two bottom row figure plots, which are low-spend CIC types: there is heterogeneity, again–but much less, in that saving dominates hugely for both clusters, accounting for 80% and 83%, in spending allocation by business sector. In addition to the conclusion on the difficulty to generalize we just made, a second finding worth stressing in the present context is that the two low-spend CIC types in Fig. 16 tend to buy a (much) less diversified consumption bundle, indeed heavily dominated by saving, whereas the high-spend types are (much) more diversified in their CIC-paid purchases, and saving is low (at 5%) or absent. Surprisingly, food and water in this illustrative selection of four utility types in our sample as in Fig. 16 accounts for a larger share in the high- vs low-spend types, as well as saving does–but none of the two low-spend types saves at all.

A final result we uncovered, which is not visible in the pie charts by cluster but is evident from Table 2 (by the 1’s in column ‘Savings Group’), is that clusters with an intermediate range of their CIC balances, i.e., neither high-spend, nor low-spend, tend to save 100% of their CIC balances in several such clusters. All in all, while we were able to reveal CIC-spending behavior that can be characterized as a common pattern, we have also seen how difficult it is to generalize results across our ‘optimally extracted’ meso-layer split into 50 utility agent types.

Indeed, one of the key novel contributions of our work was that of the heterogeneous subpopulations. Subpopulation modeling has become more prevalent in recent years (Bektas et al., 2021; Johnson et al., 2023). However, when we conducted this work with Grassroots Economics in early 2020, subpopulation modeling of heterogeneous agents was in its formative stages in the economic literature. By using subpopulation modeling, we were able to uncover the revealed preferences of heterogeneous agent types/clusters, as documented in their recorded CIC transactions spending behavior, see Table 2 and Figs. 15 and 16. We also ascertained their levels of trust in the CIC system, as approximated by their respective CIC balances by agent type. Although our simulation shows that there is a net systems’ outflow, meaning that agents still prefer fiat to token, there is additional economic stimulation provided because of the CIC network over solely fiat aid grants.

6 Concluding Remarks

In this paper, we examined what blockchain-technology community inclusion currencies imply for human transactions behavior and the related liquidity effects in a poor community, based on a dataset extracted from the Grassroots Economics CIC project in Kenya. We proposed a network-based complex systems model of subpopulation interactions, and implemented a simulation of the performance of the model economy given some hyperparameters.

6.1 Main Findings and Contributions

We attempted to bridge complex systems modeling and simulation approaches and the corresponding terminology, typical for computer science and systems engineering, with concepts, theories and interpretations that are well grounded in economic analysis and monetary theory. In doing so, we highlighted the potential usefulness and limitations of the emerging blockchain-technology backed community inclusion currencies now popular in Cryptoeconomics. Essentially, we presented empirical evidence that the potential of such CICs is related mostly to serving as a local and temporary liquidity-provision institutional device in local economies to increase their internal exchange and economic value added, thereby serving as a market-based mechanism to alleviate poverty, akin in its automatism and credibility to a currency board in national economies. Yet, as also corroborated by our recorded data behavior, we do not view such CIC systems as a long-run solution to the problems of liquidity shortage that decreases internal trade, isolates these backward regions from the rest of the country and the world, and depresses their growth, employment and prosperity. The ultimate goal of these CIC systems should, therefore, be rather to promote a transition toward complete inclusion and integration into the national and global economies, pulling over the communities and regions out of self-sufficiency and poverty into more advanced stages of economic development and well-being. We were also able to infer transactions-based behavior of the CIC-users, after ‘optimally’ disaggregating them using a computational method into 50 utility types of revealed spending preferences. The analysis of these types of heterogeneous agents at a meso-level identified saving and purchase of food and water as the spending priorities of the poor population in the CIC implementation we studied.

From a computer science perspective, this paper developed a meso-level subpopulation model that we simulated for the Grassroots Economics CIC project. This framework, however, can be configured for other economic modeling applications. Our model was designed to be leveraged for making decision about how to govern a local economy and manage its liquidity and nonbarter exchange.

6.2 Limitations and Future Research

To address the key limitations of our work, we suggest a number of avenues for future research, e.g., adding more detailed adoption processes, the introduction of fees, and the execution of simulation experiments to guide operational decision-making. Enumerated below are the recommended modeling next steps:

  • User adoption and randomized withdrawal

    • Poisson distribution—fractions of CIC in subpopulations (change withdrawal and distribution policies)

      1. Randomize when subpopulations withdraw. They each have a separate ‘30-day clock’.

      2. Cash-outs are discrete events in continuous time. Time between events is a flow-weighted exponential distribution. Generate time between events, with the amount to disburse based on the mixing process.

      3. Lower bound is 30 days. There is a max of 30k withdrawal per 30 days for the system. Some cash out at every time step.

      4. Poisson distribution for each subpopulation for new arrivals.

      5. For each subpopulation, we will represent these arrivals by the percentage of CIC that is available for withdrawal.

  • Weighted edges for choosing probability of subpopulations interacting; i.e., subpopulations interact with the same 5 subpopulations primarily.

  • Fee mechanisms.

    • Parameter sweeps on fee percentages, and which actors to impose them, i.e., traders, investors, or general users via transaction fees.

  • Payer and receiver need to have separate amount of CIC demanded. Payer wants to pay in 100% fiat, whereas receiver may only want 5% fiat. Need to reconcile the two and track the difference.

    • Create ‘negotiator’ policy and separate generator functions.

    • Fraction of demand in CIC edge type to dictionary of type payer key value and receiver key value.

  • Move to closed loop model without external drips or new buy-ins, meaning, removing external liquidity infusions, can the economy function by itself, and what fees are required for the Currency Operator to not run out of either fiat or CIC.

  • Advanced algorithmic inventory allocation.

    • If scarcity on both sides, add feedback to reduce percentage able to withdraw, frequency one can redeem, or redeem at less than par.

  • Percentage of k cycles centrality–for rewards feedback/basic income.