Constant dollar plan

The constant ratio plan was one of the first plans devised when institutions started to invest in the stock market. The plan is often called rebalancing. Another type of plan is called a "variable ratio plan". There are several ways of executing these plans. The simplest is called the Constant Dollar Plan, which has been discussed in various investing books.

Description

One possible scenario is an investor with $10,000 dollars to invest. He invests half into stocks, and the other half into bonds or a money market fund. If his shares cost $10.00, he invested $5,000.00, so he has 500 shares. Later after a market move, he finds his shares are valued at $3.00 a share, so he has lost 70% of his stock portfolio. He now transfers $3,500 into the stock portfolio, in order to bring the value back to $5,000.00. He now has 1,666 shares. Later, the market recovers and his shares are now valued at $10.00 a share. His shares are now worth $16,660; he sells $11,660 and puts the proceeds into his bond portfolio. He now has $5,000 in the stock market and $13,160 in bonds.

Further reading

  • Practical Formulas for Successful Investing, by Lucile (Tomlinson) Wessmann, W. Funk (1953)
gollark: > `def __eq__(self, xy): return self.bigData[math.floor(xy.real * self.n + xy.imag)]`This actually gets indices into the matrix. I named it badly for accursedness. It uses complex number coordinates.> `def __matmul__(self, ǫ):`*This* function gets a 2D "slice" of the matrix between the specified coordinates. > `for (fοr, k), (b, р), (whіle, namedtuple) in itertools.product(I(*int.ℝ(start, end)), enumerate(range(ℤ(start.imag), math.floor(end.imag))), (ǫ, ǫ)):`This is really just bizarre obfuscation for the basic "go through every X/Y in the slice" thing.> `out[b * 1j + fοr] = 0`In case the matrix is too big, just pad it with zeros.> `except ZeroDivisionError:`In case of zero divisions, which cannot actually *happen*, we replace 0 with 1 except this doesn't actually work.> `import hashlib`As ever, we need hashlib.> `memmove(id(0), id(1), 27)`It *particularly* doesn't work because we never imported this name.> `def __setitem__(octonion, self, v):`This sets either slices or single items of the matrix. I would have made it use a cool™️ operator, but this has three parameters, unlike the other ones. It's possible that I could have created a temporary "thing setting handle" or something like that and used two operators, but I didn't.> `octonion[sedenion(malloc, entry, 20290, 15356, 44155, 30815, 37242, 61770, 64291, 20834, 47111, 326, 11094, 37556, 28513, 11322)] = v == int(bool, b)`Set each element in the slice. The sharp-eyed may wonder where `sedenion` comes from.> `"""`> `for testing`> `def __repr__(m):`This was genuinely for testing, although the implementation here was more advanced.> `def __enter__(The_Matrix: 2):`This allows use of `Matrix` objects as context managers.> `globals()[f"""_"""] = lambda h, Ĥ: The_Matrix@(h,Ĥ)`This puts the matrix slicing thing into a convenient function accessible globally (as long as the context manager is running). This is used a bit below.
gollark: * desired
gollark: I can write some code for this if desisred.
gollark: Surely you can just pull a particular tag of the container.
gollark: I can come up with a thing to transmit ubqmachine™ details to osmarks.net or whatever which people can embed in their code.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.