M 言語 亀取引戦略 実施 (V 1.0)

作者: リン・ハーン小さな夢, 日時: 2018-12-29 09:07:24
タグ:カメ取引MyLanguage は

バックグラウンド

1994年,CovelはFinancial Worldの号を拾い出し ウォール街のトッププレーヤーズという記事を読みました ロバートソン,コヴェルはリストの25位に彼が認識していない名前を気づいた:R. ジェリー・パーカー,彼はリチャード・デニス (Covelが認識しなかった別の名前) によってとして訓練されたと述べた.

概要

リチャード・デニスはトレーダーとして 2億ドル以上稼ぎました 取引は学習可能なものなのか 生まれながらの才能なのか 議論した後 投資に100万ドルを各人に与えました 旅行からインスピレーションを得ました シンガポールにある亀飼育場へ行き を育てているように 商人を育てます.

1,000人の応募者それぞれが 厳格な応募手続きを経て 知的能力,リスク管理能力,数学的能力を テストしたものの チェコスロバキア生まれのブラックジャックマスター ダンジョンズ・アンド・ドラゴンズ・ゲーム・デザイナー 福音派会計士 ハーバードMBA 4年間で1億5千万ドル以上を稼ぎ上げました

取引規則:

トートル取引法では,非常に重要な技術指標である ドンチアン・チャネルを使用します. このチャネルは,よく知られているボリンジャー・バンドと非常に似ています. 具体的計算では少し違います

リチャード・ドンキアンはこの指標を発明した.それは3つの異なる色の曲線からなる.指標は,期間中の最高価格を使用 (通常は20,いくつかのプラットフォームシステム) 市場価格の変動を示す最も低い価格,チャネルが狭いとき,それは市場変動が チャンネルの幅が小さい場合,市場の変動は比較的大きいことを意味します.

価格がチャネルの上部線を突破すると,それは購入の可能性のある信号であり,反対に,下部線を突破すると,それは販売の可能性のある信号である.

ドンチアン運河の計算方法は以下のとおりです.

上部レール = Max (最高,n),n 日間の最高価格の最高値

下列列 = Min (最低価格,n),最低価格の最小値 n 日

中部レール = (上部レール + 下部レール)/2

この戦略は,金融部門における多因子分析の枠組みの中で,突破後の価格動向を予測する. この要因の有効性は,確かに厳格に検証され,Fama-フランス三要素モデルによって補完され, 金融市場

もちろん,より合理的なトレンドブレイキング指標を最適化して使用できます.

動力因子は広く広く利用されている因子であるため,なぜ亀取引法が群衆から突出するのでしょうか? 答えは簡単です. 取引規則は,ポジション制御とストップ・ロスの非常に厳格な規則を定義します.それぞれをご覧ください.

    1. 位置Nの基本単位

    トートルルルールの原則は,小単位 (Unit) を定義して,ポジションの予想値変動が総純資産の1%に対応することです. この小さなユニットの資産を購入すると,その日のポジションの市場価値は,総純資産の1%以上変化しない.

    この小単位がもたらす価値変動をどのように推定しますか? まず,この小単位 (この値) の価値変動を予測する際に タートルストラテジーは,過去価格変動を統計的に平均する方法を用いる. 具体的な計算式は以下の通りである.

    TrueRange = Max ((高−低,高−前近,前近−低)

    N = (前19日のN値の和 + 当時のTrueRange) /20

    低値が前日の閉盘価格を示します. この結果から,前日の閉盘価格を示します. N の値が実際に資産価格の最近の変動を適切に表現できるという定義です.

    単位は,次のように計算されます.

    ユニット = (1%*Total_net) /N,Total_netは,資産の総純価値です

    ユニットの資産の価格変動は,総純資産の1%です.

    1. ポジションを開くとき

    トレンド突破シグナルが生成される.現在の価格が上位線を突破した場合,それは購入ポジションを生成します. 現在の価格が下線線を下回る場合は,ショートポジション信号を生成します (仮想通貨市場はショートセールによってサポートされます!)

    初期製造サイズ = 1 ユニット

    1. 追加位置はいつですか?

    保有ポジションがロングポジションであり,資産の価格は最後の保有ポジション (または追加ポジション) に基づいて0.5N上昇した場合,ロングポジションの単位を追加します.

    保有ポジションがショートポジションで,資産の価格が最後のポジション (または追加ポジション) に基づいて 0.5N 低下した場合は,ショートポジションの単位を追加します.

    カメ戦略は上下を追いかける戦略だと見ました

    1. ダイナミックストップ・ロスの操作方法

    持有ポジションがロングポジションで,資産の価格が最後の持有ポジション (または追加ポジション) に基づいて2N低下した場合,すべてのポジションのストップ・ロスは,

    保有ポジションがショートポジションで,資産の価格が最後の保有ポジション (または追加ポジション) に基づいて 2N 増加した場合,そのポジション全体が閉鎖されなければならない.

    部分的な閉じるポジションを始めるために 0.5Nの落下のような,急いで2Nの減少を待つ代わりに, 影響するコストはそこにあります

    1. どうやって利益を得るか ダイナミクスをカスタマイズして利益を得られるか?

    タートルドルルでは,Take Profitの信号は次のように生成されます.

    持有ポジションがロングポジションで,現在の資産価格が第10のドンキアン・チャネルの下線線を下回る場合は,すべてのポジションを閉じる.

    持有ポジションがショートポジションで,現在の資産価格が10番目ドンキアン・チャネル上位線を超えると,すべてのポジションが閉鎖されます.

    もちろん,ユーザは,動的な利益を取ることプランをカスタマイズすることができます. 例えば,総純資産 / 初期純資産 > 1.5 の場合,利益を取ることができます.

利点

トートル取引法の最大の利点は ポジションの規模を効果的に制御する方法を確立するのに役立ちます

欠点

トートル取引システムには トレンドトラッキング戦略で共通の問題があります. それは浮動利益の撤回です. 大きなトレンドで非常に強く,ショック市場ではあまりうまくいかない.

喋りすぎだ 実現しよう!

M言語

開発6年後に,それは何百万人ものユーザーのフィードバックを吸収しています. それは成熟した安定したモデル開発プラットフォームです. M言語は最も一般的な言語です. 中国で広く使われている プログラムモデル開発プラットフォームです

M言語は,複雑なアルゴリズムを個々の関数に分類し, 文法がシンプルですが,特別なプログラムデータ構造と豊富な財務統計機能ライブラリで論理的で複雑な金融アプリケーションもサポートできます.

M言語の機能ライブラリは頻繁に更新され,新しい機能をサポートするために顧客の新しい要件に応じていつでも追加することができます プログラマのアイデアと新しいアプリケーション

FMZ Quantは,M言語の文法解釈を実現しただけでなく,JavaScriptなどの高レベルの言語とプログラミングを混合する能力を強化しました.

例えば:

//ここで FMZ Quant から任意の API 関数を呼び出すことができます scope.TEST = 機能 (obj) { obj.val * 100 を返します ほら 閉じる価格:C

閉じる価格が100倍増幅されます:

前回の閉値が100倍拡大される: TEST ((REF ((C, 1)); // マウスはバックテストのK線に移動し,変数の値が表示されます.

img
img


(*backtest
start: 2018-11-01 00:00:00
end: 2018-12-19 00:00:00
period: 1d
exchanges: [{"eid":"Futures_BitMEX","currency":"XBT_USD"}]
args: [["ContractType","XBTUSD",126961]]
*)

// this demonstration mainly uses the Turtle Trading Rules to demonstrate the method of writing "position management, maximum position control and other fund management".
// only the demonstration key content statement is annotated, other statements please consult customer service
//This model is only used to demonstrate the use of this strategy, and enters the market accordingly, at your own risk.

TR:=MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));// True volatility
ATR:MA(TR,26); // Find a simple moving average of the true amplitude in 26 cycles, shown in the figure
ZOOM:=IFELSE(ISCONTRACT('@Futures_(?!CTP).*'), CLOSE, 1); // Compatible with cryptocurrency futures as margin
LOT:=((MONEYTOT*0.01*ZOOM)/(UNIT*ATR))*ZOOM;// Calculate the number of one hand based on 1% of equity
TC..IFELSE(ISCONTRACT('@Futures.*'), INTPART(LOT), LOT); // Compatible futures and spot ISCONTRACT starts with @ to indicate matching exchange name, support
MTC..4*TC; // Total position
HH^^HV(H,20); // Attached to the main image display
LL^^LV(L,20); // Attached to the main image display
CROSSUP(C,HH)&&ISLASTBK=0&&ISLASTSK=0&&BARPOS>=26,BK(TC);// The latest price exceeds the highest value of 20 cycles, the first time to buy long, the quality is TC hands
CROSSDOWN(C,LL)&&ISLASTBK=0&&ISLASTSK=0,SK(TC); // The latest price fell below the lowest value of 20 cycles, the first time to sell short, the quality is TC hands 
C>=BKPRICE+0.5*ATR&&BKVOL<MTC&&ISLASTBK,BK(TC);// The price has increased by 0.5 times ATR on the basis of the last holding position, and when the number of hands does not exceed 4 times of TC, buy long the adding position of TC hands
C<=SKPRICE-0.5*ATR&&SKVOL<MTC&&ISLASTSK,SK(TC);// The price fell 0.5 times ATR on the basis of the last holding position, and when the number of hands does not exceed 4 times of TC, sell short the adding position of TC hand.
C<=(BKPRICE-2*ATR)&&BKVOL>0,SP(BKVOL);// The latest price is less than the opening price minus 2 times of ATR, stop loss and close position
C>=(SKPRICE+2*ATR)&&SKVOL>0,BP(SKVOL); // The latest price is greater than the opening price plus 2 times of ATR, stop loss and close position
CROSSUP(H,HV(H,10))&&SKVOL>0,BP(SKVOL);// The highest price up-cross the highest price of 10 cycles, closing the position
CROSSDOWN(L,LV(L,10))&&BKVOL>0,SP(BKVOL); // The lowest price down-cross the lowest price of 10 cycles, closing position
TRADE_AGAIN(10);

関連性

もっと