There is now a dedicated page for SeSim - Open Source Stock Exchange Simulator. New releases and other information will be found there.
Now you can download a first rudimentary version of SeSim, the Stock Exchange Simulator as announced here.
It was tested under Windows and Linux.
You can download the jar file uSeSim_001_alpha.jar which you can run, if java is installed on your computer.
To play around with, create first a strategy, by going to edit->strategies, pressing the "new" button. Chose RandomTraderA and enter some values. Then goto edit->traders and add some traders using your strategy.
And now hit the run button to let them trade.
Have fun and stay tuned, because more updates will follow.
Bitcoin was raising, and the price for one Bitcoin is now around the same as for one ounce of gold.
So isn't it insane to pay for one Bitcoin as much as for one ounce of gold?
According to this article there are currently between 155,244 tonnes and 2.5 million tonnes of gold in the world. Nobody knows how much gold is actually there. In the opposite for Bitcoin we know exactly, how many coins are in the world. Currently there are around 17 million Bitcoins, but there will never be more than 21 million Bitcoins for sure.
Taking the minimum amount of gold (155,244 tonnes) converting it to ounces (5,476,076,856 ) and setting it in relation to the maxim number of Bitcoins (21,000,000) we note, that there are 260 ounces of gold for every Bitcoin in the world.
This means: to get real price equality between Bitcoin and gold, the price of Bitcoin has still to raise 260 times from now on. And that's just the worst case, if there are actually "only" 155,244 tonnes of gold in the world. If there were 2 million tonnes of gold, the price for on Bitcoin should rise more than 3000 times.
So isn't it insane to sell one Bitcoin for the same price as for one ounce of gold?
I am proud to announce my new german blog: Uniadmin.
Earning money by day trading is considered to be extremely hard. I've often read that about 95% of people who attempt day trading will lose money. This might be true and coincidences with my observations among people I know, because I don't know anybody who is able to make money by day trading.
But who are these 5% of people making money by day trading ? Do they really exist?
Sometimes I believe the only people making money by day trading are people writing about day trading or people teaching other people in day trading or people selling software for day trading or any other people doing things related to day trading but actually don't do day trading.
Do these 5% really exist?
If they exist, they are already rich, for sure, because they are the successful day traders, and if they still keep on day trading, they have a lot of power to move the market.
So there was the question: What if I was one of these 5%? What if I was mighty? What if I had a nearly unlimited amount of money? What if I had such a huge amount of money, that my orders will move the market? How does it feel to move the market by placing huge orders? What can I achieve by placing big orders?
Because it's very hard to jump out from the 95% to the upper 5% in real live, I decided to write a little piece of software which simulates real live market situations while cheating me into the upper 5% of day traders with a lot of money.
The program is called SeSim - The Stock Exchange Simulator. It is open source. You can download the source code from github. The software is still under development, but basic functionality is already given.
In the future I will write more about it here, how to us it, how to install it.
Imagine you were a day trader, and you make in average one trade per day on 200 days a year.
Further imagine you have to pay a commission fee of $10 when buying shares, and again you have to pay a commission fee of $10 when selling shares, which is effectively $20 per trade.
So you can simply calculate: You will pay $4,000 per year in commission fees.
Or in other words: You have to make with your trades a profit of at least $4,000 a year to make no losses.
And now take a look at your account balance.
If you start with $1,000, you have to have a yearly performance of 500%, which would results in a profit of $4,000, only to pay the commission fees. You are only on the winning side, if your performance is better than 500%.
If you start with $10,000 you have to raise your account only 40% up ($14,000), to pay the commission fees to make no loss, but still no win.
And last: If you start width $100,000, your performance has to be at 4%, to pay the commission fees.
So remember: Your biggest enemy are neither the other traders, nor the trend or whatever, your biggest enemy in dat trading are the commission fees in relation to your trading capital.
In an earlier post I showed an algorithm to factorize integers using backtracking. The algorithm was implemented in python. Here we have now the same thing in erlang.
To run the code, copy the script and save it to a file named "factorize.erl".
Then enter a shell and compile the module using the following command:
Now you can factorize an integer (in our example 129) with this command:
$escript factorize.beam 129 [3,43]
It seams, the erlang version is much faster than the python version.
Here is the Erlang code.
-module(factorize). -export([ main/1 ]). getbit(X, N) -> (X bsr N) band 1. setbit(X, N, 1) -> X bor (1 bsl N); setbit(X, N, 0) -> X band (bnot (1 bsl N)). bitcmp(_I1, _I2, _N, _N)-> 0; bitcmp(I1, I2, N, I)-> B1=getbit(I1, I), B2=getbit(I2, I), if B1 /= B2 -> B1 - B2; true -> bitcmp(I1, I2, N, I + 1) end. bitcmp(I1, I2, N) -> bitcmp(I1, I2, N, 0). fac_check(I, 1, _I2, P, _Bits) when P == I -> false; fac_check(I, _I1, 1, P, _Bits) when P == I -> false; fac_check(I, _I1, _I2, P, _Bits) when P > I -> false; fac_check(I, _I1, _I2, P, _Bits) when P == I -> true; fac_check(I, _I1, _I2, P, Bits) -> bitcmp(I, P, Bits). fac_check(I, I1, I2, Bits) -> fac_check(I, I1, I2, I1 * I2, Bits). fac_run(I, _I1, _I2, _N, 4) -> [I]; fac_run(I, I1, I2, N, B) -> B1 = getbit(B, 0), B2 = getbit(B, 1), I1N = setbit(I1, N, B1), I2N = setbit(I2, N, B2), R = fac_check(I, I1N, I2N, N + 1), case R of true -> lists:append(factorize(I1N), factorize(I2N)); 0 -> F=fac_run(I, I1N, I2N, N+1, 0), if F =/= [I] -> F; true -> fac_run(I, I1, I2, N, B + 1) end; _ -> fac_run(I, I1, I2, N, B + 1) end. fac_run(I, I1, I2) -> fac_run(I, I1, I2, 0, 0). factorize (I) -> lists:sort(fac_run(I, 0, 0)). main(Val) -> [X]=Val, R=factorize(list_to_integer(X)), io:write(R), io:format("~n").
Today I want to compare my both favorite keyboards, an IMB Model M from 1985 and an Hewlet Packard keyboard C1405A from the 90ies. Both keyboards have a good typing sound, a good feedback, both are very heavy wighted, but I don't want to lose too many words, see yourself, which is the better one. Next I give you two text examples, on typed on the IBM Model M and the other on the HP C1405A. I have marked them both in different colors, so you can better distinguish them.
This is typed on the IBM Model M keyboard:
The quick brown fox jumps over the lazy dog.
And this is typed on the HP C1405A keyboard:
The quick brown fox jumps over the lazy dog.
Do you see the difference?