<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-13132562</id><updated>2011-07-07T16:18:02.464-04:00</updated><category term='hunting packs lopsidity'/><category term='twitter'/><title type='text'>Robots &amp; Automated Share Trading</title><subtitle type='html'>Discussing the evolution of a personal automated stock/share trading robot for amateur and professional investors. Covering issues such as, gains, risk, robotic ethics, privacy and reliability.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>11</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-13132562.post-1938793415894803037</id><published>2009-06-10T13:25:00.003-04:00</published><updated>2009-06-10T13:30:14.795-04:00</updated><title type='text'>Quants and Engineering</title><content type='html'>This is an interesting post for those of us involved in using our engineering backgrounds to create trading systems. The message: Don't rework the basic equations to make it look like the elephant can fly.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.newsweek.com/id/200015"&gt;Revenge of the Nerd&lt;/a&gt; a Newsweek article.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13132562-1938793415894803037?l=trading-robotics.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/1938793415894803037/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13132562&amp;postID=1938793415894803037' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/1938793415894803037'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/1938793415894803037'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/2009/06/quants-and-engineering.html' title='Quants and Engineering'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13132562.post-3349672013946369077</id><published>2009-05-22T08:44:00.004-04:00</published><updated>2009-05-22T13:00:30.174-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='twitter'/><title type='text'>Twitter - Follow Henry</title><content type='html'>You can follow the trading activity of a number of the Henrys on twitter. Follow henrytherobot at twitter.com to see each entry and exit point.&lt;br /&gt;&lt;br /&gt;A signal looks like:&lt;br /&gt;&lt;br /&gt;&lt;span class="status-body"&gt;&lt;span class="entry-content"&gt;henry3NPI4[1,10] BUY: usa/HOLX Q: 589 P: 11.73 - 2009-05-21 3:59pm&lt;br /&gt;&lt;br /&gt;henry3NPI4 is the robot running the henry trading strategy&lt;br /&gt;[1, 10] says [pool, ticket] this says pool 1 has taken the following trade with ticket 10 and it is buying on the US market HOLX 589 shares at $11.73 each at the time stamp shown.&lt;br /&gt;&lt;br /&gt;There are five active pools and this robot can have all five holding a stock at once.&lt;br /&gt;&lt;br /&gt;Note: not all tweets sent to twitter get through... they have a problem when their tweet queue gets too long it simply drops new arrivals.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13132562-3349672013946369077?l=trading-robotics.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/3349672013946369077/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13132562&amp;postID=3349672013946369077' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/3349672013946369077'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/3349672013946369077'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/2009/05/twitter-follow-henry.html' title='Twitter - Follow Henry'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13132562.post-7390559545292847771</id><published>2009-05-22T08:25:00.004-04:00</published><updated>2009-05-22T08:43:40.387-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hunting packs lopsidity'/><title type='text'>Hunting in Packs - first results of live tests</title><content type='html'>The biggest issue for most people meeting one of our robots for the first time is "won't all the robots do the same thing at the same time?"&lt;br /&gt;&lt;br /&gt;The answer is yes and no. Through a range of factors all robots behave slightly differently. Some of these factors are designed in, others are a consequence of lopsidity (a wonderful word borrowed from an Australian engineer I once worked with at Broken Hill).&lt;br /&gt;&lt;br /&gt;At the moment I have turned off the designed in features that inhibit running in packs to better explore the components introduced by lopsidity. For the time being lopsidity appears to be doing a great job at keeping multiple robots behaving differently.&lt;br /&gt;&lt;br /&gt;In fact it has come as a real surprise just how different the actual behaviour is in practice. The pack sizes are still tiny in comparison to what our projections indicate they will work at, but when just two robots are started at the same moment, looking at the same 100 stock the results one month later are startlingly different. As projected, the performance (trading gains) are in line with the gain trajectory, but the individual stock picks and entry and exit points are remarkably different.&lt;br /&gt;&lt;br /&gt;So far I have managed to isolate a number of factors that fit into the general lopsidity category. Each has a role to play but I shall have to generate some additional analysis tools to explore these fully.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13132562-7390559545292847771?l=trading-robotics.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/7390559545292847771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13132562&amp;postID=7390559545292847771' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/7390559545292847771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/7390559545292847771'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/2009/05/hunting-in-packs-first-results-of-live.html' title='Hunting in Packs - first results of live tests'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13132562.post-113086327651555280</id><published>2005-11-26T11:40:00.000-05:00</published><updated>2005-11-26T07:11:39.096-05:00</updated><title type='text'>RISK! What Risk?</title><content type='html'>Like a mirage, the more you look at financial risk the less sure you are about what you are really seeing. Risk is intuitively obvious. Or is it? You would think that with the long history of trading, risk would be really soundly understood. At one level it is; you have less money than you started with. But as you dig into the definitions and drill down you find at the end of the search - nothing! When I say 'nothing' what I really mean is you find a couple of competing definitions, not an absolute statement of pragmatic use about what risk is. Here is the best summary of our current understanding of the nature of risk I could find:&lt;br /&gt;&lt;br /&gt;"A search of the financial literature yields many discussions of risk but few definitions. To understand risk, we must understand two streams flowing through the 20th century. One is subjective probability. The other is operationalism. Where they meet, we can understand risk."&lt;br /&gt;&lt;div style="text-align: right;"&gt;&lt;span style="font-weight: bold;font-size:85%;" &gt;Defining Risk, Glyn A Holton. Financial Analysts Journal. Nov-Dec 2004.&lt;br /&gt;&lt;/span&gt; &lt;/div&gt;&lt;br /&gt;We can understand risk but we cannot define it. This looks a little like the situation before Newtonian mechanics came along. Scientists thought they knew on a case-by-case basis how the universe worked but until Newton famously got hit on the head by an apple while hiding in the countryside from the bubonic plague, nothing really tied events together. Later Einstein did the same for another bunch of 'facts' that proved a nuisance to understand.&lt;br /&gt;&lt;br /&gt;Here is a &lt;a href="http://www.investopedia.com/search/results.aspx?q=financial+risk&amp;submit=Go"&gt;bunch of risks&lt;/a&gt; that we can define, plus some. So if there is no fundamental way of quantifying risk are we left to assess it purely on a case-by-case basis?&lt;br /&gt;&lt;br /&gt;We have found a way of expressing risk in a way the robot can use. Sufficiently general so as to cover a wide range of situations, but in no way a universal principle. Borrowing from many years experience in physical and IT security we don't think of trading as a financial assessment. In stead trading we assess as two asset classes experiencing particular threats. Each threat has one or more balancing countermeasures which can be activated under the right conditions.&lt;br /&gt;&lt;br /&gt;Assessing how likely a perceived threat may occur in prevailing conditions indicates if we should activate the countermeasure. Risk, as an assessment of potential loss, is estimated by assessing how many unaddressed threats remain outstanding in the environment. The robot addresses two primary risks and juggles a balance between them. In ridiculously simple terms these boil down to:&lt;br /&gt;&lt;br /&gt;First is the risk of &lt;span style="font-weight: bold;"&gt;not&lt;/span&gt; making a profit while out of the market. There is only one effective countermeasure, deciding to enter the market - but &lt;span style="font-weight: bold;"&gt;many ways&lt;/span&gt; of arriving at this conclusion. If after a risk assessment a countermeasure component fires, then it is most probably safe to enter the market.&lt;br /&gt;&lt;br /&gt;Second, while in the market, should I now exit. Again, there is only one action to consider but if after a risk assessment a countermeasure fires it is wise to exit. However, if no countermeasure is triggered it is most probably safe to stay in the market.&lt;br /&gt;&lt;br /&gt;The robot does not think about winning or losing. Many investors find this perspective hard to work with. It continually assesses its trading activity to figure out if its behaviour is in line with a winning strategy controlled by risk assessments. Individual transactions are &lt;span style="font-style: italic;"&gt;almost irrelevant&lt;/span&gt; in its assessments. So long as it follows its risk assessment guidelines, overall it always wins. It plays with loaded dice.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13132562-113086327651555280?l=trading-robotics.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/113086327651555280/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13132562&amp;postID=113086327651555280' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113086327651555280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113086327651555280'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/2005/11/risk-what-risk.html' title='RISK! What Risk?'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13132562.post-113292230842688736</id><published>2005-11-25T07:21:00.000-05:00</published><updated>2005-11-25T09:05:13.806-05:00</updated><title type='text'>We Robots</title><content type='html'>At an alumni networking meeting the other evening someone asked me to describe our robots. I was stunned to find myself describing the robot almost as a person. This should not come as a surprise. But it did. Our working descriptions when we are discussing behaviour and performance always return to talking about it as a human trader.&lt;br /&gt;&lt;br /&gt;Today's ramble is about trying to better describe this mythical trader. It runs something like this:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;A robot is an automaton that behaves like an ethical human trader who has the experience and skills needed to meet his/her performance targets in the trading environment in which he/she is knowledgeable and operates. &lt;/span&gt;&lt;span style="font-size:85%;"&gt;In operation the person it serves and the goal it works towards on his/her behalf is its principle focus.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;Its behaviour is not completely self-serving or indiscriminate. It has a degree of awareness about what is right and wrong in the context of the person it serves and the environment in which it operates and prospers.&lt;br /&gt;&lt;br /&gt;While it is hungry for growth it is not boundlessly greedy. During trading it seeks consistency over wild opportunism and works within a risk/reward profile agreed with its owner. In making decisions it is autonomous but not autocratic.&lt;br /&gt;&lt;br /&gt;Being able to interact with a wide range of distributed systems, owned by many differing organisations, the robot has an inbuilt understanding of data ownership, privacy and the appropriate use of such data with remote systems. In particular fulfilling its obligations towards its owner take precedent over other roles.&lt;br /&gt;&lt;br /&gt;It is able to balance its operational obligations towards its manufacture, operator and owner appropriately in such areas as Data Protection, Security (accountability, confidentiality, integrity and availability) and Performance. In achieving this balance it has an awareness of its responsibilities to each entity it interacts with and can respond appropriately.&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13132562-113292230842688736?l=trading-robotics.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/113292230842688736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13132562&amp;postID=113292230842688736' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113292230842688736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113292230842688736'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/2005/11/we-robots.html' title='We Robots'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13132562.post-113291953746189173</id><published>2005-11-25T06:07:00.000-05:00</published><updated>2005-11-25T06:59:39.626-05:00</updated><title type='text'>Extreme Agility</title><content type='html'>Growth kills. Its one of the maxims of business. Growing too quickly is as bad as growing too slowly. Philosophers and pragmatists agree, its one of the few topics where they find common cause; growth is not only vital but has to be just right for the current prevailing conditions.&lt;br /&gt;&lt;br /&gt;On the other hand, everyone seeks instant, unrestricted and boundless success. Now!&lt;br /&gt;&lt;br /&gt;As Lao Tzu said in 400 BC, "No tree grows to heaven." Many other philosophers have also noted that building deep and extensive roots produces slow but accelerating, sustainable growth. Conversely, rapid, unbounded growth creates spectacular, colourful short lived blossoms that equally as quickly return to mulch. Business is full of examples of both types.&lt;br /&gt;&lt;br /&gt;What has this to do with robotic trading? It is about thinking in metaphor. Does that make it clearer? Probably not... Tag along for a few more paragraphs please.&lt;br /&gt;&lt;br /&gt;Our robots are about creating financial growth for individuals and organisations. But we the creators have a day to day problem when creating the software. First, its never been done before so we don't have a known, reliable plan to build to. Second, as we move forward we have to be agile enough to adapt to feedback and experience, initially from ourselves but also increasingly from our users.&lt;br /&gt;&lt;br /&gt;Without a plan we cannot progress. However, a detailed plan of what a financial trading robot should look like is not available - hence we work primarily with metaphor. Our primary metaphor for the software is a robot.&lt;br /&gt;&lt;br /&gt;Slowly we give it characteristics. We then test these characteristics against what we have projected. Usually we now go back and modify them, repeating this process until the robot passes our tests of acceptable behaviour.&lt;br /&gt;&lt;br /&gt;There are two concurrent movements in modern software development, travelling under the names of Agile Software Development and Extreme Programming. What makes these approaches work is not so much the technical details - important as they are - but the glue that makes all the intricacies work is metaphor. Having a metaphor every team member understands and can relate to while they cut the code is &lt;span style="font-weight: bold;"&gt;the single most important aspect&lt;/span&gt; of these approaches.&lt;br /&gt;&lt;br /&gt;The beauty of metaphor is it is descriptive without being prescriptive. It helps you to decide what to do without telling you how to do it. It fosters creativity while focusing on results.&lt;br /&gt;&lt;br /&gt;In order to achieve extreme agility and pragmatic results quickly - with least effort - we tell stories, paint word pictures of our metaphor and build the metaphor as the glue in our team. We sketch diagrams that fit the story we are telling that explains the metaphore in context and name the code we write to fit the parts in the story. The code we write is the root system feeding everything else we project will follow. It is a broad and deep root system.&lt;br /&gt;&lt;br /&gt;It is nearly two years since we created our first metaphor and the software components we now have at our disposal were not dreamt or planned at that stage. They evolved. Many never made it, proving to be dead ends. The aggregate of those that survived the Darwinian testing process give us the shape of today's robot, which is at the same time highly defined but agile enough to go on evolving.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13132562-113291953746189173?l=trading-robotics.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/113291953746189173/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13132562&amp;postID=113291953746189173' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113291953746189173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113291953746189173'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/2005/11/extreme-agility.html' title='Extreme Agility'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13132562.post-113292931745430592</id><published>2005-11-22T09:07:00.000-05:00</published><updated>2005-11-25T09:37:57.330-05:00</updated><title type='text'>Re-Writing History</title><content type='html'>Pete and I agree on most things. We are a good balance. My boundless enthusiasm and his cautious nature balance like a yacht running before a brisk wind with a steadying sea anchor deployed. So it comes as a surprise we cannot agree on something as simple as a name for the robot.&lt;br /&gt;&lt;br /&gt;Part of the problem is the name in question has become embedded into the code, making it harder to eliminate all reference to it. It would also be a damned sight easier if the name wasn't so descriptive and apt.&lt;br /&gt;&lt;br /&gt;Over the past few months as things have started to come together I have found myself saying something like, "I wish I could claim brilliance and foresight about {this latest wonder} but if I did I would just be re-writing history." Which brings me back to the name in question, Trinity.&lt;br /&gt;&lt;br /&gt;One evening after a long day of forcing together three independent expert system structures into one operational unit, I was watching a DVD. The Matrix. The code I was working on had a working title but now the module needed naming. In the middle of the DVD the character called Trinity appeared. And that was it. Since then the main robotic module has had the name Trinity.&lt;br /&gt;&lt;br /&gt;If I was inclined to re-write history this story would run slightly differently, a little like this in fact:&lt;br /&gt;&lt;br /&gt;Our robot models a basic human reasoning structure that follows a BE-DO-HAVE format. These three components may be thought of as providing a planning process, a process that collects the material and data needed to complete the tasks planned and finally the execution of the tasks with feed back of the results to the planning stage so corrective action can be built into the next round. We chose the name Trinity to describe this neat three stage representation encoded into our expert systems.&lt;br /&gt;&lt;br /&gt;Pete still doesn't like the name, with its obvious religious connections. I'm somewhat stuck with it and have got used to it. Fortunately released robots are given different names, so this 'under the hood' name doesn't have too much public exposure. Perhaps I should just claim brilliant forsight and just get on with life...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13132562-113292931745430592?l=trading-robotics.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/113292931745430592/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13132562&amp;postID=113292931745430592' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113292931745430592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113292931745430592'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/2005/11/re-writing-history.html' title='Re-Writing History'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13132562.post-113086414086383122</id><published>2005-11-01T11:43:00.000-05:00</published><updated>2005-11-01T13:26:42.493-05:00</updated><title type='text'>The Laws of Robotics</title><content type='html'>When I first read Asimov's 'I Robot' it fired up in me an already huge ambition to become a technologist. Tackling technology and social issues through science fiction was not new but it was certainly new to me. Every automation project I have worked on has been influenced in some way by his Three Laws of Robotics but non more so than creating a trading robot.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Three_Laws_of_Robotics"&gt;Read about the Laws in more detail here&lt;/a&gt;. They are exquisitely stated, succinct, finely balanced generalizations, reading more like a set of ideals in a declaration of independence than the opaque code we are used to interpreting from our lawmakers:&lt;br /&gt;&lt;br /&gt;1. A robot may not harm a human being, or, through inaction, allow a human being to come to harm.&lt;br /&gt;&lt;br /&gt;2. A robot must obey the orders given to it by human beings, except where such orders would conflict with the First Law.&lt;br /&gt;&lt;br /&gt;3. A robot must protect its own existence, as long as such protection does not conflict with the First or Second Law.&lt;br /&gt;&lt;br /&gt;As a designer they provide helpful guides through the minefields of privacy, risk, autonomous decision making and of course responsibility.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13132562-113086414086383122?l=trading-robotics.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/113086414086383122/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13132562&amp;postID=113086414086383122' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113086414086383122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113086414086383122'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/2005/11/laws-of-robotics.html' title='The Laws of Robotics'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13132562.post-113052428875839600</id><published>2005-10-28T14:03:00.000-04:00</published><updated>2005-11-01T11:13:25.653-05:00</updated><title type='text'>Hunting In Packs, or Robots and Ethics</title><content type='html'>"If everyone out there has a trading robot, won't that affect the market?", is the sort of question we find follows on from, "Are you barking mad? Who would let a bit of software loose with their cash? Look what happened in 1987", etc.&lt;br /&gt;&lt;br /&gt;The world appears to fit into two distinct camps on this last question. Those who feel that an airplane flies better and more reliably when on autopilot. And those who don't. Mostly this latter group is composed of pilots. I suspect that professional and serious amateur traders fall into the pilot category. Most of my unfortunate friends (and fellow travellers on trains and planes) who have asked me what my latest inventing adventure is, have much less of a problem with the idea.&lt;br /&gt;&lt;br /&gt;Which leads nicely back to the first question because there are many more passengers than there are pilots out there. What happens when every man and his best friend's dog have robots of their own? The universe of traded stocks is not so large that chasing the latest hot move isn't going to be affected by every robot under the sun jumping on it. This issue became a problem early on in our discussions and work with making a robot.&lt;br /&gt;&lt;br /&gt;My glib answer was the robots needed a sense of ethics about eating. Only eat when hungry. There are plenty of opportunities to graze lightly without hunting down every last quarry flushed out of the bush. Let some pass by, eat too much and the crop will suffer. We only need look at the Atlantic Cod fish stock levels to understand this.&lt;br /&gt;&lt;br /&gt;Our back testing data indicated that for a significant size of robot population it was not unreasonable for them to gang-up and hunt as a single pack of a given size. But if the overall pack size could be kept lower then so much the better. Numbers suggest that for trading a limited stock pool (the robot constantly monitors the trading pattern of a number of stock) and if each robot was only trading capital of the average online portfolio amount, a pack size of 25,000 robots is acceptable.&lt;br /&gt;&lt;br /&gt;In the short term we will be artificially limiting the pack size to 2,500 live robots while we test the effects of implementing alternative pack hunting strategies.&lt;br /&gt;&lt;br /&gt;An only eat when hungry analogy is not as "barking mad" as you might first think. It means you eliminate the effect of excessive greed from the equation. Conversely, enabling every robot to work towards maximising its gain at every conceivable opportunity has the effect of quickly reducing gain for everyone, so it is ultimately self defeating.&lt;br /&gt;&lt;br /&gt;We also know the trading characteristics of taking lots of small profits and can use this to help the robot adjust its behaviour in line with its growth and risk targets. If moral behaviour is the visible effect of an ethical set of values, the robot now has the tools for making additional judgements about its trading decisions in an ethical manner.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13132562-113052428875839600?l=trading-robotics.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/113052428875839600/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13132562&amp;postID=113052428875839600' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113052428875839600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113052428875839600'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/2005/10/hunting-in-packs-or-robots-and-ethics.html' title='Hunting In Packs, or Robots and Ethics'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13132562.post-113050938459225913</id><published>2005-10-28T10:14:00.000-04:00</published><updated>2005-10-28T13:52:24.366-04:00</updated><title type='text'>Barefoot Trading, Some Questions</title><content type='html'>In the past year I have discovered that the world of stock trading is full of 'methods'. Bewilderingly so. "Hardly surprising" do I hear you say, "given people have been trading since the dawn of time." What chance has a new method in this churning sea? In fact I found myself asking, is there even such a thing as a new method? Surely the basics are, well, just that, basic. Buy low, sell high. Isn't everything else merely a variant of this simple idea?&lt;br /&gt;&lt;br /&gt;While talking with people far more experienced and knowledgeable about the world of finance than I am the same question keeps on popping up. Why is your method better or more reliable than the Leveraged Scalp Chopping technique? Or whatever the latest method might be. Usually I don't have the slightest idea. Either with knowing what a Leveraged Scalp Chopping technique is or how it might even be comparable. Which just goes to show that ignorance really is bliss, until someone tries to enlighten you.&lt;br /&gt;&lt;br /&gt;Once the panic dies down I get back to basics. This is done by reminding myself that all we set out to do with the robot was create a means for the average Joe or Jane to make a reasonable return on a part of their capital. Moonshots are not part of the plan.&lt;br /&gt;&lt;br /&gt;The goal was not to set out to beat the pants off every investment technique, stock, bond or whatever financial instrument some brain on legs has dreamed up for producing squillions of dollars out of thin air. Our goal in creating a stock trading robot is to help people like us reliably gain some of the benefits of trading.&lt;br /&gt;&lt;br /&gt;All we set out to do was buy low then sell a little later slightly higher, repeating this process as often as practical to work the magic of compounding. You probably understand that it took us quite a long time to be able to say it this succinctly, since simple things are always hard to grasp. Complexity is tantalizing and amazing camouflage. But once we got the idea we started looking for this as an underlying premise in the 'methods' on offer. And of course we found it. Everywhere. Mostly it is implicit in the benefits created by following the method. But there it was. Brilliant!&lt;br /&gt;&lt;br /&gt;Long before Newton got hit on the head by an apple, everyone knew that if you fell down it hurt. And that if you jumped off a cliff, you didn't go up, you went down - and the farther 'down' was the more it hurt when you finally got there. This implicit knowledge only becomes useful when you can put it to work. Now we knew about gravity as a concept who else had uncovered its workings. What had they to say about compounding in trading?&lt;br /&gt;&lt;br /&gt;Compounding has been around as long as usury has been frowned upon by religion. Which probably means this is a very long time indeed. So I went back to the books again and of course searched the Net for more about its wonderful magic. Everyone agrees its magic. Also, everyone is unanimous it should be invoked at every possible opportunity. Unless of course you are the borrower. For the moment lets stick with the creation aspect, since if we have enough income the other aspect of compounding as a borrower need never bother us!&lt;br /&gt;&lt;br /&gt;My search was now narrowed down. How did compounding and trading work together?&lt;br /&gt;&lt;br /&gt;Follow on questions boiled along. What characteristics does a trading strategy taking small gains and experiencing small losses have? Was it regarded as a risky strategy? Did it give good, bad or indifferent results? If so, what conditions led to each type of result? Is there an underlying theory to guide the unwary?&lt;br /&gt;&lt;br /&gt;I could find no answers to these questions. Probably I just didn't look into or stumble across the right place. So my next step was to do what we were taught in kindergarten. Make a model of the toy you want Santa to bring. Someone might just take the hint. On the other hand you also might also enjoy yourself and move along a little and stop annoying the grown-ups.&lt;br /&gt;&lt;br /&gt;By this stage we were getting the results in from our first back testing runs. Our research robot, lovingly called Labrat because we regularly dissected it and used its re-incarnations over-and-over, was starting to show the sort of 'interesting' results scientists swoon over. This usually means an interesting pattern ermerges from the noise, hopefully a significant pattern.&lt;br /&gt;&lt;br /&gt;While Labrat toiled away at the merciless number crunching the gods of avarice have assigned to him, I fell to modeling in a back-to-basics way physicists love and their wives throw up their hands in despair at. Compared to most performance modeling I have done this really was very basic. Try as I could to make it more complex the more the model told me it wasn't needed. And there in the model's data was the same patterns we were seeing in the backtesting. Eureka!&lt;br /&gt;&lt;br /&gt;Once you have a model of a process you have the means of automating it.&lt;br /&gt;&lt;br /&gt;Time now to switch analogies. Leave behind Newton, apples and gravity. Bring on airplanes and autopilots and the heady smell of Jet A-1 aviation kerosene on the morning breeze.&lt;br /&gt;&lt;br /&gt;The interesting thing about autopilots is they give you the comfortable illusion of keeping your plane on course for Chicago, or wherever you are heading. In uncomfortable reality 90% of the time they only really know what is happening when the plane wanders off-course. If you have the picture of aircraft zig-zagging their way across the skies its not too far short of the truth. Each zig and subsequent zag, is tiny. Feedback keeps it on a track but correction can only be applied when the plane moves away from the desired heading for Chicago. Small adjustments create the illusion of the plane flying in a straight line. The magic in this is the model used to keep control. In the early days of flying pilots would lean out of their cockpit window and using glimpses of the ground adjust their headings by dead reckoning. These planes really did fly zig-zags. The pilot closed the feedback loop. The control model resided in the pilot's expertise. Today they drink coffee and chat up flight attendants! The plane appears to fly itself. Can we do the same for trading?&lt;br /&gt;&lt;br /&gt;We labeled the trading strategy we evolved The Barefoot Trader because it had similarities with the back to basics approach of the Barefoot Doctors in the Far East. These practioners relied upon a basic set of proven medical tools, potions and expertise to dispense sound health care to large numbers of people. It turned out to be a very successful model which meant the overall strategy worked because it was built upon workable foundations. The sophisticated medical techniques are still available for the situations they address. In action the strategy ensured regular people have day-to-day benefits from a sound basic philosophy. This felt like a good plan to follow.&lt;br /&gt;&lt;br /&gt;Our robot now has its simple model to guide its trading behavior and it can be used to implement a number of trading products. Theory and backtesting match. Live testing is underway and the results I have seen so far from Henry (we have moved on from rats to cats, naming the robots after the numerous felines in our lives) look good-to-go too. He is looking at the NASDAQ in the USA and the FOOTSIE in London and over the next year we will gather the live test results to compare alongside the lab evidence.&lt;br /&gt;&lt;br /&gt;So, getting back to that first question: Is there room for another method out there? I believe so. Not so much because it is a better method than any other at selecting stock but because it exhibits a positive trading behavior. It can keep itself on track, know when its gone off track and adjust its behavior to get back on track once again. And finally, and maybe more importantly you don't need to become a pilot to fly this beastie. It runs on autopilot. Just buy a ticket and fly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13132562-113050938459225913?l=trading-robotics.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/113050938459225913/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13132562&amp;postID=113050938459225913' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113050938459225913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113050938459225913'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/2005/10/barefoot-trading-some-questions.html' title='Barefoot Trading, Some Questions'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-13132562.post-113000512506033753</id><published>2005-10-22T14:08:00.000-04:00</published><updated>2005-10-22T19:39:02.710-04:00</updated><title type='text'>"So! What is a Robot?", He Asked.</title><content type='html'>I think of a robot as something that does a job for me with minimal input and direction. It just gets on with a job I can or could do, creating an outcome for me that is in some way desirable - and hopefully a lot better than I can achieve. The small vacuum cleaners that scuttle about houses picking up crumbs and working their way around the floors are a good example. This type of robot does a physical job. My interest lies in the type of robot that can do an intellectual task for me. Hence the evolution of the share trading robot.&lt;br /&gt;&lt;br /&gt;Some might argue that its not really a robot because it has no reach into the physical world, no actuators to pick up and move things or sensors to perceive what is happening. This view of robots is dominated by the course robotics has taken in the mechanical handling world. There is a whole other aspect to robotics concerned with goals and decision making. In this world the processing and evaluation of data within the context of the robot's reason for existing is a whole separate field.&lt;br /&gt;&lt;br /&gt;Converting raw data into meaningful information, then evaluating information within the context of a body of expertise in order to achieve an appropriate goal is where I currently sit. Our share trading robot has been designed as a platform for working with decision making and tackles some of the many issues involved with creating practical answers that work in the real world for real people.&lt;br /&gt;&lt;br /&gt;I call our software a robot because it does most of its work on its own, it has a simple task to perform, goals to work towards, some liaison tasks and a means of measuring its own performance. Compare this with a typical PC software application. Mostly they are what is know in the trade as event driven. A 'user' sits in front of the computer and drives the application through a series of actions. Its the user's consciousness that is in control, co-ordinating events to reach a goal. Apart from the times the machine is busy doing processing the significant goal of the activity is controlled from outside the code. With a robot the goal lies embedded within the code. This is about as clear as I can be at the moment about why I call our software a robot. In operation the user rarely interracts with the software, in fact once it is set-up the robot's owner (a term I use for what is in effect the 'user' of the program) is able to benefit from the robot's autonomous behaviour.&lt;br /&gt;&lt;br /&gt;For the trading robot this means the owner sees an increase in their net worth as a consequence of its activity - with very little input into the process. It goes around picking up crumbs of profit so it can compound large gains.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/13132562-113000512506033753?l=trading-robotics.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://trading-robotics.blogspot.com/feeds/113000512506033753/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=13132562&amp;postID=113000512506033753' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113000512506033753'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/13132562/posts/default/113000512506033753'/><link rel='alternate' type='text/html' href='http://trading-robotics.blogspot.com/2005/10/so-what-is-robot-he-asked.html' title='&quot;So! What is a Robot?&quot;, He Asked.'/><author><name>Trinity</name><uri>http://www.blogger.com/profile/11611623689034716419</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
