アルゴリズムと機械の外国為替戦略 | OneStepRemoved

  • Articles
  • Sophisticated Web Sites
  • Automated Trading
  • お客様の声
  • お問い合わせ

One line of code makes all the difference

2 月 9, 2017 によって ショーンオバートン 4 コメント

I was really excited about my Pilum strategy two months ago. The research looked great and everything was ready to rock and roll. Demo testing began and then… not much happened.

The Quantilator is (mostly) finished, which finally gave me time to circle back and review what happened with Pilum.

Live demo trading of Pilum

Live demo trading of Pilum. 12月 9, 2016 to Feb 7, 2017

The expected outcome was that I would win 75% 時間の. Trades were infrequent, so I thought maybe I’m just having bad luck. But then my win rate remained stuck around 50%. Simple statistical tests told me this was unlikely to be bad luck.

I used the research time to pour over my research code and to compare it with live trades. What I found was that a single line of code (AHHHHHHHHHHHHHHH!) was incorrectly calculating my entry price, dramatically overstating the profits.

、 flawed code produced this equity curve from a single combination of settings:
Flawed Pilum backtest

When the actual, correct result looks like this with those same settings:

The accurate backtest of Pilum

The accurate backtest of Pilum

I’ll be honest… I like the flawed backtest a lot more!

The new, single-setting backtest isn’t as good, but it’s still trade-worthy. There are some characteristics that I dislike and features that I love. Let’s dig into those.

What I dislike

The frequency of trades is very low. Out of 19 months there were a total of 43 取引. 43 trades to comprise a backtest on 40+ instruments is a very small number.

If it weren’t for the statistical pattern backing up the frequency, I would not consider the test. しかし, there are 20,000 bars each on the 44 instruments. あります。 880,000 total bars used to analyze whether my Pilum pattern offers any predictive value.

The most valuable predictions, しかし, are also exceptionally rare. That’s why I’m not able to get the trading frequency higher, which would potentially smooth the returns.

What I love

My previous systems like QB Pro and Dominari traded actively for relatively small wins. Trading costs exercised a massive impact on the overall performance.

The accurate backtest of Pilum

The accurate backtest of Pilum

Now look again at the correct equity curve (the image to the right). Do you see the final profit of roughly 0.14? That’s a 14% unleveraged return over a 19 ヶ月の期間.

Allocating 2:1 または 3:1 leverage on this strategy could average annual returns of 15-25%.

Detecting hidden risk

A key measure of risk is skewness. You may not use that term yourself, but it’s something most of you already understand. The biggest complaint about people trading Dominari was that the average winner relative to the average loser was heavily skewed towards the losers.

Dominari wins on most months, but when it lost in December it was devastating. I implemented what I thought was a portfolio stop after the December 9th aftermath. Then I had a smaller, but still very painful, loss in January. The portfolio level stop loss of 3% should prevent future blowouts now that I know what goes wrong.

I still believe in Dominari. しかし, I obviously lost the work of most of the year due to those events.

Knowing that skewness is a good measure of blowout risk (even if you’ve never seen it in a backtest, like happened with Dominari), Pilum looks extremely encouraging.

This is a histogram of profit and loss by days. You should notice a few things.

The tallest bar is to the right of 0. That means that the most frequent outcome is winning.

worst and best days

The biggest winning day is dramatically better than the worst losing day. The worst outcome was a loss of 2%. The best outcome is gains near 10% in a single day (unleveraged!).

This is the statistical profile of an idea that’s much more likely to grab an avalanche of profits than it is to get blown out.

It gets even better

low correlation

Would you say that the blue and red equity curves are highly or loosely correlated? Look closely.

Writing this blog post made me think carefully about the Pilum strategy. I decided that maybe I should see if all of the profits are coming from different settings at the same time. There’s very little risk of overfitting the data as my strategy only has 1 degree of freedom.

The blue bars are the equity curve of Setting 1.

The red bars are for Setting 2.

Do you think these are tightly or loosely correlated?

If you said loosely correlated, then you are correct. Notice how each equity curve shows large jumps of profit. Did you notice how those profit jumps occur on different days?

The blue setting skyrockets on a single day in November 2016. It leaves the red equity curve choking in its dust.

But then, look what happens as I advance into December. The red curve dramatically catches up to the blue curve and even overtakes it.

The correlation between the 2 strategies is only 57%.

Combine multiple settings into 1 portfolio

Combined settings Pilum equity curve

This is a much nicer equity curve!

Loose correlations are a GIFT. Combining two bumpy equity curves into a single strategy makes the performance much, much smoother.

The percentages of days that are profitable also increases. Setting 1 is profitable on 58.0% of days. Setting 2 is profitable on 53.5% of days.

しかし… combining them makes Pilum profitable on 68.2% of days. 素晴らしい!

That also provides more data, which puts me in a stronger position to analyze the strategy’s skewness. Look at the frequency histograms below. They’re the same type of histograms that I showed you in the first section of this blog post. As you’ll notice, they look a lot different.

Pilum most probable daily profit and loss

The most probable outcome for any given day is a small winner

The tall green bar is the most probable trading outcome for any given day with filled orders. The average day is a positive return of 0-1%.

The small red bar is the worst trading day of the combined strategy.

The small green bars are the best trading days of the combined strategy.

Look how far to the right the green bars go. The largest winner is more than 3x the biggest loss. と, there are so many more large winners compared to losers.

Giant winners are far more likely than comparable losses.

The Plan

I immediately pushed Pilum into live trading this combination of two strategies. I expect that adding a second degree of freedom and running about 30 different versions of the strategy – all with different settings – will add to the performance and smooth the returns even further.

Dominari hasn’t been working on my FXCM account, which is very difficult to accept because the lacking performance seems to be a buried execution issue. Pilum, しかし, trades very infrequently. It’s unlikely that execution quality will make a dramatic difference in the long term outcomes.

だから, I’m going to convert the FXCM account to trading Pilum exclusively. That will be offered as a strategy on Collective2 within the next few weeks, a company with whom I’ve been working closely. Their users are more investor rather than trading oriented – they’re far more likely to view low trading frequency as a good thing. I suspect that most people here have a different opinion and want to see a lot of market action.

I’ll write an update on Dominari shortly.

以下の下でファイルさ: Pilum, 戦略の取引のアイデア タグが付いて: 相関関係, カーブフィッティング, 自由度, ルール, equity curve, 周波数, FXCM, histogram, レバレッジ, QB プロ, リスク, スキュー, 統計情報

私はどのように悪いので欲しいです?

3 月 22, 2016 によって ショーンオバートン 10 コメント

あなたは絶対に定期的に取引システムのパフォーマンスをチェックする必要があります. あなただけでは、あなたの株式曲線を見てからの問題のほとんどを欠場するつもりです.

そのほとんどは数週間前に私に起こりました. 私は自分のアカウントを観察したところ, 私は、実際の結果が大幅に仮想的な結果を下回っていたことに気づきました. クイックレビューは、私だけかかったことを教えてくれました 271 前の週以上の取引, 私のバックテストのに対し見つけることが期待 360.

私は取引されました 75% セットアップの! 何が不足している取引を説明することができます?

欠陥を見つけます

私はDominariのメタトレーダー版に書いた一つの特徴は、最大拡散機能でした. 私は手数料を払っています, そのように支払うのまれではあるが可能なシナリオのアイデア 10 耐え難い見えた貿易を入力するスプレッドピップ. 私はだまさ防止するために、最大拡散機能を追加しました.

スプレッドが広すぎる場合、私はまた、何が起こるかに多くの思考を入れていません. 私の最初の本能は数秒間休止状態にEAを入れていました. その後、目を覚ますと広がりをチェックします. スプレッドは十分に狭くなっている場合, それは、市場の秩序を送信します. しかし、私の急いで取引を開始します, 私はまた、価格が私の元の要求された価格の近くにあることを必要とするのを忘れました. そのデザインは、市場がアップドリフトすることができただろう 10 ピップとその後, スプレッドが狭くなった場合, 劇的取引で取得する余分に払います.

スプレッドが広すぎる場合に支払わ広がりをキャッピングするための新しい方法は、指値注文を使用しています. この方法の利点は、2つの同時の問題を解決することです. 第1は、理解しやすいです. 指値注文は、限られた価格を持っています. 上の段落で説明した価格ドリフトが発生することはありません. 私は私なしで私が欲しい価格や市場の動きを得るどちらかと私は貿易を欠場します.

私は月に実行変更を行ったため、エクイティ・カーブ 16.

私は月に実行変更を行ったため、エクイティ・カーブ 16.

エントリに指値注文を使用する第2の利点は、指値注文は、ブローカーのサーバー上に載っているという事実であります. スプレッドは一時的に許容可能な価格に狭くなる場所冬眠方法は、潜在的に第二の画分を見逃す可能性が. 指値注文は、すべての見積価格をキャッチ, フィルの私の理論的可能性を向上させます.

現実には、取引の週後に理論を証明しました. 代わりに取っての 75% すべての可能な信号の, 私は今取っています 87.5% 信号の. つまり、新しい制限法の結果だと私の意欲は、貿易を入力して、より広いスプレッドを支払うこと.

もっと改善

私の心の上部に疑問がありました, “私はこれらの取引を入力するためにさらに多くを支払うことを喜んでなければなりません?” 良いような 約, 私はすぐに質問を算出することを決めたの代わりに、でたらめに推測します.

私はキャンセルされたアカウント内のすべての指値注文を検索するためのメタトレーダーでスクリプトを書きました. 私は単純に法外な広がりを支払っていた場合、私は、それらの取引の仮想的な性能があったであろうものを見て.

これは、これらの取引を入力するために、私はより多くのお金を支払うことを喜んでなければならないことが判明します.

があった 50 過去一週間以内に指値注文をキャンセル, 44 理論的に収益性の高いそのうちの. トレードあたりの平均の理論的利益は、すべての実行取引のための€0.33比べ€1.28. それは巨大です 287% 収益性の違い!

他のショッカーは%の精度でした. 44 うち 50 の精度を暗示 88%, 比較すると 64% 執行した取引上の精度. 50 信号は多くはありません. 私は逃した利益についてあまり興奮またはその不運でいます?

基本的な統計は、高精度で答えを与えます. 実際の精度があれば 64%, あなたが見ることを期待します 50 * 0.64 = 32 ランダムサンプリングで勝ちトレード. 私の観察, これらの指値注文との理論上の精度がありました 44 のうち受注 50, あります。 88% 正確です.

これは、これらの取引を入力するために、私はより多くのお金を支払うことを喜んでなければならないことが判明します.

、 標準偏差 ため 64% 上の精度 50 注文されました 0.48, 私たちは、その後、計算に使用することができます 標準誤差. 標準エラーに 50 注文はSQRTです(50) * 0.48 = 3.42 注文.

そして最後に, 標準誤差は、私たちにZスコアを計算するのに十分な情報を提供します. Zスコアは、観測値、期待値/標準エラーです, あります。 (44-32) / 3.42 = 3.5. A z スコア の 3.5 の確率を有します 0.000233 偶然によって生じます, または約 1 で 4,299 テスト.

結論: 統計は私の未実行の注文は私の実行注文よりも実質的に正確であることを高い信頼度で言います.

受注は両方のより正確であると貿易値ごとに高いと, 私は私がによって支払うことを喜んだ最大の広がりを増加しました 53%. それが妙に正確な聞こえますが, 取引あたりの値は、実質的に過大評価されるかもしれません. 私はボールが払っていることを推測を停め 40% 高品質の貿易のための貿易コストが妥当であると思わ. その数は私が詳細を測定するためには、より高い行かなければならないことがあり.

探査のためのアイデア

ライブ次数解析から驚くべき外挿は、スプレッドが成功の私の可能性を予測するために思われることです. スプレッドの拡大は、私はもっと成功する可能性が高い、より良いリスクで作ります:報酬率. 今後数日間の私のプロジェクトでは、スプレッドが私の信号の収益性を予測するかどうかを評価するために、信号生成時に私のスプレッドのログを開始することになります.

奇妙なことに, でも、狭いスプレッドが私の故障を予測逆説的な結果があるかもしれません. 私が質問に答えるための十分なデータを持っている場合、その上の詳細.

以下の下でファイルさ: ルール タグが付いて: 実行, 制限, 約, スリッページ, 標準偏差, 標準誤差, 統計情報, Z スコア

ランダムの末尾制限

3 月 12, 2012 によって ショーンオバートン 14 コメント

私からアイディアを得た末尾制限・ ヴァン ・ タープ市場クラシック 貿易金融の自由への道. 私が最初に彼を雇ったとき、彼のトレーニングの一環として本を読むジョン Rackley を作られました。. 彼は、ページの異常な主張に私の注意をもたらした 267. バン ・ タープだというよく乱数もお金を稼ぐことが可能.

ランダムな番号が私の持論. 長いかどうか、取引完全ランダムで、まだお金を作る戦略を開発することを考え出すことを努力しました。. トレーダーのためのプログラミングの会社の所有者として, 12 月 NinjaTrader の Jon の初期トレーニングの一環として, 彼のコードに戦略をプログラミング タスクに割り当てられます.

本の状態は完全にランダムなエントリとその取引と 3 一般的にお金を稼ぐをため、ATR トレーリング ストップ. コインをフリップします。. あなたが行く長い頭に着地した場合. 短いツインテールに着地した場合に行く. 1 つの重要な注意事項使用を選んだこと 純粋なランダムな数字 コンピューターで生成する疑似乱数ではなく我々 のプログラミングで. これにより、私たちが一般にポップアップするとき使われる種が近い時間でシード処理における時間バイアスを避けるために.

見直した最初の作業バージョンはバン ・ タープの主張に反してすべてを表示. トレーリング ストップを使用してください。, 楽器やテストの時間枠に関係なく, 必然的に破壊的な損失をもたらした. 利益の要因は、一貫して近くに来た 0.7, 本当にひどい数.

お客様は、私たちのほとんどを行ったとき最悪の戦略を見つける. 私たちはその頭の上の戦略を反転. 新しい戦略のみを使用、 3 ATR (50 期間) 末尾制限.

末尾の極限解析

早期妥結は末尾制限が潜在的な偉大な取引を提供するように見える. ジョン コードを送ってくれた数ヶ月前が, これは、この夜だけ私は正しく確認し、すべてをテストする機会があった.

利益要因は非常に心強いです。. それは私がテストしたグラフに依存します。. 最悪のことがわかった、 1.0 プロフィットファクター. 他のすべてはより大きい利益と出て来た 1. 下の小さなテーブルに最初のテスト結果が含まれています. 次のホット勝者である垂涎をオフに行く前に, 留意すべきいくつかの考慮事項があります。:

  1. 結果は使用される乱数のシーケンスに完全依存します。. ランダムな数字の別のセットを使用すると、異なる結果.
  2. 可能性がより高い時間枠のより良い結果をサンプリング エラーから. 取引関係の数は 160 ~ のみ, これはパフォーマンス性に決定的な結論を出すために十分ではありません。. 参照してくださいすることを好む 400 または決定的な結論を描画する前より多くの取引.
  3. これらの結果は含まれません スプレッド 費用または手数料.
通貨期間プロフィットファクターテスト日程
ユーロドルM11.129/12/2011-3/12/2012
GBPUSDM11.169/12/2011-3/12/2012
USDJPYM11.259/12/2011-3/12/2012
ユーロドルM51.112011
GBPUSDM51.02011
USDJPYM51.062011
ユーロドルH11.262011
GBPUSDH11.252011
USDJPYH11.482011
Random trades sometimes produce solid looking equity curves

ランダムな取引時に固体の持分曲線を生成します。. これは単にランダムな番号と末尾制限が生成されたことを覚えています。

私は結果についてよりよく感じる作ったものを検討していた、 入り口と出口の効率 各戦略の. 取引関係の数は本当にグラフィックを雑然と. 私は走った、 バックテスト はるかに短い期間に、水平, 各グラフの青い線が明瞭に現れる.

The entry efficiency of a random entry is... random

ランダムなエントリのエントリ効率が… ランダム (45.45% エントリ効率)

The exit efficiencies of random entries with traililng limits are outstanding

後続の制限でランダムなエントリの終了効率はチャートから. (77.73% 効率を終了します。)

入力効率を教えてくれる私たち期待を見つけよう. ランダムに入力した取引がよりランダムに実行しないでください。 (明らかに). 興味深いは、どのように末尾制限出口戦略は実際に読むエントリ効率を傾斜ランダムよりやや悪い. これはの良い例ですなぜそれが純粋な統計情報に依存するは危険. 誤った結論を作る可能性を低減大きな画像を念頭, この場合は、ある可能性があります。 “間違っています。” 当社の完全にランダムなエントリ.

出口戦略, 我々 は本当に何をテストしている、します。, 絶対に恒星に見える. 条件付き確率の不利な動きの大きな動きの極端なポイントを捕獲している間ことができ、それはその演技を示しています.

お金の管理を追加

テスト グラフの範囲からの受賞者の割合 60-67% 精度. 受賞者の高い割合は、しばしば縞の勝利につながる. 私が簡単に桜に適切な例を見つけるにつながったグラフを介して私の一瞥を選ぶ. ここで, 5 行にトレードがほぼ最大に達する利益を取る.

Random trades on a hot streak

幸運な当選者の縞につながる時々 ランダムに取引を選ぶ

それ多い方が有利という戦略は、連続受賞者に基づく位置サイズを増やす私に語った私が過去にやったテストよりも 50% 正確です. 私の最初のアイデアを変更する初期の結果を確認した、 外国為替のお金の管理 年連続の受賞を追求する戦略. 我々 は残念なことに今のコードでこれらの変更を追求する時間を持っていません。. かどうかこれを見ることに興味があるなら、それを作ってあげる優先度十分な読者応答する場合私に知らせて.

あなたのおかげで統計的にうまく連続受賞後リスクが増加中, それは、リスクに追加します。. それは完全に可能、 “勝利” 一連の取引を失い始めるはお金の管理戦略のみに基づいてください。. 取引のあなたのセットの余分なリスクの運の受益者になるかどうかまたはそれが低い敗者になるかどうかを知る方法はありません。.

結論

停止について誰も協議します。. 常に停止をしなければなりません. 何とか何とか何とか. 私はそれは誰もが尋ねる最初の質問をするつもりです知っています。.

私の研究は示します停止と取引が吸盤のためであります。. ラリー ・ コナーズ’ 本 短期的な取引戦略その作業 私が実際に貴重な情報をお読みのような感じた最初の取引本だった. 私のお気に入りのセクションの 1 つは停止損失です。. 彼の研究によれば、ストップロスを使用 (さらに、 50% 損失を停止します。) 常に戦略のパフォーマンスが低下します。. これに耐える私の自身の独立した分析.

停止を使用していない損失を取ることはありませんわけではないです。. それどころか, 損失で市場を終了することを拒否すると、 100% 1 日爆破のオッズ. 停止または制限を使用してのポイントは経験的定義, 揺るがない, 特定のポイントまたは終了するが、市場のポイント. 末尾制限が見事に目標を達成します。.

興味深いことに, FAP のターボは、まだ他のエキスパートアドバイザーの検索にある組み込まれています 1 つの機能に末尾制限されて. 戦略の FAP のターボ タイプのファンではないが, それ確かにその主な機能の 1 つはこの研究に合わせて私の関心は. また注目すべきは末尾制限が損失を受け入れるそれまでもを続けるという事実です。.

以下の下でファイルさ: NinjaTrader ヒント, あなたの概念を歴史的にテストします。, 戦略の取引のアイデア タグが付いて: atr, プロフィットファクター, ランダム, 統計情報, 末尾制限, トレーリング ストップ, バン ・ タープ

メールで無料の取引戦略

トレンド分析

申し訳ありませんが. No data so far.

アーカイブ

  • ルール
  • 外国為替市場のしくみ?
  • インジケーター
  • メタト レーダーのヒント
  • MQL (オタクのため)
  • NinjaTrader ヒント
  • Pilum
  • QB プロ
  • お金を失うことを停止します。
  • あなたの概念を歴史的にテストします。
  • 戦略の取引のアイデア
  • 未分類
  • What's happening in the current markets?

翻訳


無料の取引戦略

プライバシー ポリシーRisk Disclosure

著作権 © 2023 OneStepRemoved.com, (株). すべての権利予約.