Flash crash

Version 2.0



Avalanche-like processes are common in living systems stuffed with biofeedback. Two characteristic examples are hippocampal burst and the collapse of a financial market. Although happening on different levels of organization, they may be related because the hippocampus is an organ in the brain which participates in decision making. Both are based on positive feedback and probably may be described by similar differential equations. Let's explore the second case in details. The choice is quite obvious out of pragmatic considerations. On one hand, this phenomenon is important from different points. On the other - a lot of data was gathered about its mechanisms. Detailed explanation makes it possible to create a working model with variable parameters. Changing these parameters, one is able to explore different situations that may happen in reality. Later, the same model may be applied to different cases.

Free market is a self-regulating system consisting of many small independent traders. Each one buys or sells in search of profit. When bears sell, prices drop. When bulls buy, they rise. Biofeedback may be considered on the macro-level, but it is explained by individual psychology and statistics of decisions. Obviously, there is stabilizing negative feedback. When the price deflects from the current average and drifts towards a border of the Bollinger band, more and more traders will want to return it back. With linear approximation, we will even be able to draw parallels to mechanics and receive the output process in the form of harmonic oscillations.



They will show extinction and require some stimulus to start.


Obviously, nothing here is looking like exploding developments. Such processes require self-enhancement rather than self-correction. That is, when prices move up, away from the average, traders should feel incentive to buy. We can easily find confirmation on real charts.



Harmonic oscillations have rounded tops. Instead, price dynamics is full of fragments with sharp, narrow summits. While harmonic oscillations are similar to electric motors with smooth rotation, market dynamics is like a combustion engine. This may be explained by the logic of individual traders. There are 2 strategies to open a position. 1. Trade a reversal. 2. Join a rally. In the first case, bulls enter trading when bears close their positions. Both produce the same effect of negative feedback. The second case is principally different. When traders notice accelerating movement, they join and thus further accelerate it. The result will be exponential growth or fall.


At the beginning of this curve, you see the sharp bottom of the previous crash followed by the gradual restoration to the normal level. Then, the next exponential downfall begins.

When will it stop? Obviously, when the first strategy becomes prevalent. How is it possible if both forces grow linearly with the distance from the average? Each line is determined by 2 parameters. We can create a model with them, then experimentally and theoretically try different combinations. Avalanche processes may unfold in both directions. Below you see a mechanism that stops an exponential growth.

This combination ensures that purchasing starts earlier than selling, but the slope of the selling line is larger so the move will be eventually reversed. X - distance of current price from moving average. Y - average speed of buying (red) and selling (blue).



How to generate such curves using WinNB.


Harmonic oscillations are produced by the classical differential equation


d^2x/dt^2 = -k * x, k > 0


The meaning is that the returning force is proportional to the displacement from the central point. For the purpose of numerical integration this will look like:


value will be @X1 units if

 value is @X units; difference is @DX units;

 @DX1 = @DX - @K * @X;

 @X1 = @X + @DX1.


Now let’s add extinction


d^2x/dt^2 = -c * dx/dt -k * x, c > 0, k > 0




value will be @X1 units if

 value is @X units; difference is @DX units;

 @DX1 = @DX - @C * @DX - @K * @X;

 @X1 = @X + @DX1.


In order to implement self-supporting positive feedback, leave only the first derivative and change the sign


dx/dt = k * x, k > 0


value will be @X1 units if

 value is @X units; difference is @DX units;

 @DX1 = @DX + @K * @X;

 @X1 = @X + @DX1.



Copyright (c) I. Volkov, April 23, 2020 - April 27, 2020