SEC Proposes Wall Street Transparency Via Python
An anonymous reader writes "A US federal agency is considering the use of computing languages to specify legal requirements. 'We are proposing that the computer program be filed on EDGAR in the form of downloadable source code in Python. ... Under the proposed requirement, the filed source code, when downloaded and run by an investor, must provide the user with the ability to programmatically input the user's own assumptions regarding the future performance and cash flows from the pool assets, including but not limited to assumptions about future interest rates, default rates, prepayment speeds, loss-given-default rates, and any other necessary assumptions.' Does this move make sense? If the proposed rule is enacted, it certainly will bring attention to Python or other permitted languages. Will that be a good thing?"
The above quotes were pulled from pages 205 and 210 of the dense, 667-page proposal document (PDF). Market expert and professor of finance Jayanth R. Varma says it's a good idea.
I think a lot of those wall-street types would suddenly admit to everything they've done wrong if you confront them with a big enough Python...
Now, in addition to lawyers and accountants, you need computer programmers to invest. This smells like a racket. On the other hand, it can't get any worse than the legalese, and maybe that is the point.
Fuck systemd. Fuck Redhat. Fuck Soylent, too. Wait, scratch the last one.
This would be a fantastic idea. Not only would the rules be transparent and non-ambiguous, but the potential for experimentation and self-analysis would be incredible. Python is definitely one of the better languages to use for this, as it tends to be very readable and self-explanatory as far as programming languages go.
I love Python and I would hate to see it abused this way.
Ruby Neural Evolution of Augmenting Topologies
Maybe if the languages accepted are functional, and therefore logically provable without side-effects.
meh
If you want to confront the devil, a programming language is a good place to do it, since it's all about the details.
downloaded and run by an investor, must provide the user with the ability to programmatically input the user's own assumptions regarding the future performance and cash flows from the pool assets, including but not limited to assumptions about future interest rates, default rates, prepayment speeds, loss-given-default rates, and any other necessary assumptions.'
...it is forbidden to have a straightforward sentence with less than two conjunctions.
'We are trying to prove ourselves wrong as quickly as possible, because only in that way can we find progress.' RPF
Well, Yeah, but to make a dollar, the code is just
Print "$1.00"
Something that needs to be considered is the existence of so called "Filing Agents". I work for such a business.
Right now, the SEC requires companies to file documents in a specific subset of HTML, as well as (in some cases) XBRL, which is an XML-based reporting language. In some rare cases, documents are another type of XML, or even specially formatted ASCII documents (ugh).
Securities lawyers and company administrators don't want to understand the highly technical processes involved, so they outsource their technical reporting requirements to filing agents. We take care of all the nitpicky details that they don't want to consider. Looks like we'll have to learn Python as well. We've been meaning to graduate from Perl anyway, so no big deal. :-)
Occam's Razer does not apply to matters of finance. Ever.
'We are trying to prove ourselves wrong as quickly as possible, because only in that way can we find progress.' RPF
Just remember that one instance of the class of person may never touch another instance of the class of person's privates. You need to use protected for that.
Science advances one funeral at a time- Max Planck
actually... they were selling a car with no brakes... claiming it is safe, then taking out a life insurance policy on the sucker they sold it to.
So rather than actually explain what the item is, they'll just build a model of what it is, and let you put in your own assumptions.
So we'll create a bunch of programming overhead, and end up with huge improvements.
Namely that iInstead of descriptions nobody reads or understands, we'll have programs nobody runs or understands.
I've got an idea, I know it might sound crazy but here it goes.
If you see someone selling a great deal, but you don't quite get what they're selling, how it works, or even why it's such a great deal, DON'T BUY IT.
We could even impose this on industry, maybe make it a legal/ethical requirement that people moving around large sums of money act with due diligence or something.
If people actually stuck to this, and only bought things that they understood and made sense to them, the companies making these confusing products that nobody understands would have to make simpler more straightforward products.
These guys need to step back, and make products that THEY understand. If the designer of the product can't figure it out, it's too confusing. If none of the potential customers can understand it, it's too confusing.
Really if they currently can't implement the description, how does documenting it in python make it any better?
> cat test.legalese
The said variable 'i' hereafter referred to as "i" shall be a variable and not of unvarying or constant except for the purposes of using the said variable within a clausal computation and shall be initially equated to 1 (one) neither less nor more and "i" shall be displayed to a third party within visual distance from the visual display device but not beyond unless further provision is granted and provided by the creator of the said work. These courses of action shall be repeated for 10 (ten) times neither more nor less withstanding any systemic error which may cause the premature termination of the said operations and includes the increment of "i" by 1 (one) in a positive monotonic uniform manner performed prior to each display to the visual display device. Upon termination of the aforementioned operational sequence the operations shall cease until recommenced upon instruction of the operator.
> glegalese test.legalese
> a.out
1
2
3
4
5
6
7
8
9
10
>
OK, how about if instead of providing mileage ratings that car advertisements simply had a URL to a Python program that if you entered information about your driving habits that it would come out with an MPG value for a specific car. Obviously, there would be a completely separate Python program for every single car.
Of course, 99% of the weighting would be handled by the questions "Do you drive with a lead foot?" and "Are jackrabbit starts your normal mode?" But the other 34 questions would be there as specified by the government regulation governing the production of these Python applications.
Having a model and the user gets to make up the assumptions, you are getting a traditional garbage-in, garbage-out algorithym. Any model can conform to any belief system given the "proper" inputs. Isn't this half of what the climate arguments are about? Not the code, but the assumptions being pushed into the model?
I can't imagine that this would provide the average Joe Sixpack any useful information. I would say this isn't "transparent" in any way - unless the inputs to the model were published and required to be adhered to. This would make legally binding assumptions like in 2050 there will be fewer literate people than in 2000. I'd like to see the government come up with a plan for that.
Or worse, if a fundamental assumption of the model is rising interest rates and every investor makes 100% return in five years, great. Does the ability to push out a program that says if you enter the five year interest rates as steadily rising then justify advertising that every investor will make 100% of their money?
This also reeks of the idea that if you can't read a programming language you are a second-class citizen. Richard Stallman would be proud.
That's a good point to make, though I think your estimate of 5 years does little justice to Python. Regardless, the problem with NOT specifying a language is that it means I can make my own proprietary language and release that source code (and not the compiler, say).
Also, Python is open source through and through : community developed, open specs, several open source implementations. This means that even if one day 25 years from now Python is a dead language as far as practical usage goes, it will be no harder to understand and execute as it is today.
What is the difference in Gambling and Investing?
Whether the odds are with you or against you.
After all, I am strangely colored.
You could say the same for English, since it changes constantly. Then again, English never had well-defined syntax or semantics in the first place...
One reference language is a far better choice than a whole slew of them. To much unnecessary flexibility just adds complexity. Even if mainstream Python went in a different direction, the legally mandated dialect would survive for that purpose.