忍者ブログ
FX初心者のOLミヅキが、Excelを使ってシステムトレードを1から作っていく過程を随時更新します☆
[1]  [2
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

単利運用での資産推移が出ましたが、ミヅキが目指しているのはトレード毎の複利運用です。
1回のトレードで増えた分だけ、次のトレードでポジションを多くとる。
逆に資産が減ったら、次のトレードではポジションを少なく。

その割合は、前にも書いたとおり最大ドローダウンと必要証拠金の額で決定していくのですが、その計算式は検証結果の最大ドローダウンが出てから差し替えるとして、とりあえずは「常に資産の1/10のポジションでトレードを行う」というルールで運用したときの結果を出してみようと思います。
621ba52a.jpg
まずは、複利運用の資産とポジション数を入力する列を作り、10万円スタートなら運用開始日に「100,000」と入力します。

そこからまず、翌日のポジション数を決定する式を入力していきます。
私の場合トレードできるポジションは1万枚単位なので、小数点以下は四捨五入して計算してみます。

=ROUND((前日の資産/10000)/10,0)

しかしこれだと、資産が5万円を切ると破産してしまいますね^^;
実際はそうならないシステムを作らなければならないので、直さなくても良いと言えば良いのですが、ポジション0になっても資産変動を存続させるために「資産の1/10が1以下のときは常に1」としとこうかな?

=IF(前日の資産/10000)/10<1,1,ROUND((前日の資産/10000)/10,0)))

53217520.jpg
次に、2日目の資産をポジション数から求めます。
式の立て方は、

=IF(その日の損益="",前日の資産,前日の資産+その日の損益*その日のポジション数*10000))
(損益のない日は前日の資産のまま、損益のあった日は前日の資産+その日の損益×ポジション数)
c599a2b8.jpg

この2つのセルを下までドラッグしていくと・・・

あはっ 資産減りまくってる(ノ∀`)
ここからどう儲かるシステムが出来ていくか楽しみですね♪♪


応援してくださるみなさまのためにも頑張ります!にほんブログ村 為替ブログ FX システムトレード派へ
人気ブログランキングにも登録中☆lanking.jpg

PR
いくらの設定にするかは適当ですが、とりあえず¥100,000あったと仮定しましょう。

私はINV@STで口座を作ってて、1万枚からしか取引できないので、1万枚を単利で運用し続けたときに現在いくらになっていたかを出してみます。b382582f.jpg

計算式はこのようにして出しました。
=IF(本日の損益="",前日の資産額,前日の資産額+本日の損益*10000)
(本日の損益が空白の場合は前日の金額のまま、損益があるときは、前日の金額+(損益×ポジション数))

単純に元金の10万円に通算損益×1万枚が追加された金額になります。

次は取引ごとに複利でとるポジション数を増やした場合の資産推移を出します!
が、時間がきたので本日はこのへんでっ


応援してくださるみなさまのためにも頑張ります!にほんブログ村 為替ブログ FX システムトレード派へ
人気ブログランキングにも登録中☆lanking.jpg
ドローダウンとは、マイナスが続いたときに「一番お金をたくさん持ってた時点からいくらマイナスになったか」という数字です。
これを知っておかないと、いざシステムを使い始めてから運悪くマイナスが続いてしまったときに、破産してしまう可能性があるのです。。

逆に私が作るシステムは、最大ドローダウンと資産からポジションの数を決めていきます。
そうすれば、複利で増やすときも安全な範囲で資産を最大限に活かせる数が算出できますよね!

表中ではドローダウン⇒DDと略してますのであしからず☆


さて、実際の数字の出し方ですが、定義から考えると「-(通算損益の過去最高値現在の通算損益の値)」となります。(赤字だぞ!という認識を強くするために、あえて-表示にします(笑))
過去最高記録を更新中なら、DDは0になります!
6441c3a8.jpg
関数はコチラ。

=-(MAX(トレード開始日の通算損益:本日の通算損益)-本日の通算損益)

通算損益のときと同様、開始日のセルは固定(絶対セル)にしてください。


-17.93とか嫌ぁ~な数字が見えてますが、あとで損切り設定するってことでキニシナイヽ(´ー`)ノ


応援してくださるみなさまのためにも頑張ります!にほんブログ村 為替ブログ FX システムトレード派へ
人気ブログランキングにも登録中☆lanking.jpg
ここでひとまず通算損益を出したいと思います。
検証のときに年ごとに改めて集計するんですが、時系列いじりながら概算するのに便利だったので、入れときます!

計算はカンタン、これまでの損益の合計です。583ff461.jpg

=SUM(トレード開始日の損益:本日の損益)

ここでポイントは、トレード開始日の損益行を固定すること!
そうしないと、開始日が日付と共にずれてしまいます。


う~ん、だんだん結果に近付いてきましたねっ( *´艸`)


応援してくださるみなさまのためにも頑張ります!にほんブログ村 為替ブログ FX システムトレード派へ
人気ブログランキングにも登録中☆lanking.jpg
買う値段と売る値段が出たので、いよいよ損益の算出ができますね!

関数を整理していきます。
まず、損益は決済があったときしか発生しないので、

=IF(決済のセル="","",①損益を算出する式)
(決済のセルが空白なら空白、それ以外のときに①の計算結果を表示する) とします。

①に入る式は次のように入れました(´・ω・`)16e71142.jpg

IF(保有ポジの売買="買",決済値-エントリ値,IF(保有ポジの売買="売",エントリ値-決済値,""))

保有ポジは「買」か「売」しかないから、中のIF関数はいらなかったかな?
しかし、「買」でなければ絶対「売」!というのも不安なので、一応いれとこ(*´ー`)


応援してくださるみなさまのためにも頑張ります!にほんブログ村 為替ブログ FX システムトレード派へ
人気ブログランキングにも登録中☆lanking.jpg
いまの暫定システムは反対シグナルが出たら決済してドテンするというルールなので、「シグナルが出る=決済する」という計算式でOKです。
6d107039.jpg
しかし、後々指値エントリーや損切りの設定を加えた場合、シグナルが出てもポジションを保有していないというケースが出てくると思うので、「ポジションを持っていなければ空欄」という条件を付け加えたいと思います。

=IF(前日のシグナル="","",IF(前日の保有ポジション="","",当日の始値))

後からもっともっと修正しないといけなくなる可能性も十分ありますけどねっ!


応援してくださるみなさまのためにも頑張ります!にほんブログ村 為替ブログ FX システムトレード派へ
人気ブログランキングにも登録中☆lanking.jpg
シグナルが出たら、いくらでエントリーすれば良いんでしょう??

指値をする方法もあると思いますが、ひとまず確実な朝一の値段で成行エントリーすることにします。
トレンドが逆転したらシグナルが出るので、ドテンの繰り返しになります。(損切りの設定は後ほど!)

というわけで、シグナルが出た翌日にエントリー値は「その日の始値」です。eae2c49a.jpg
シグナルがない日はエントリーしないので、空欄のままにします。

=IF(前日のシグナル="","",本日の始値)

たまに短い計算式だと、なんだかほっとしますよね(´ー`*)


次に、決済の表示をしやすいように、現在持っている保有ポジションを表示させます。
「買建(ロング)」と「売建(ショート)」の別を示す列と約定値を表示する列の2つに分けて作りました。

エントリーした日から次のエントリーがあるまでは同じポジションを持ち続けるので、エントリー値のセルに値があるかどうかで場合分けをします。
183b3fca.jpg
=IF(ISNUMBER(本日のエントリー値のセル)=TRUE,IF(前日のシグナル="買い","買","売"),1つ上のセル)

(本日のエントリー値に数字がある場合、前日のシグナルが「買い」なら"買"、そうでなければ"売"と表示し、数字がない場合は前日と同じ文字を表示する)


ポジションの約定値はエントリー値と同じなので
7be38f1c.jpg
=IF(ISNUMBER(本日のエントリー値のセル)=TRUE,本日のエントリー値のセル,1つ上のセル)

(本日のエントリー値に数字がある場合は本日のエントリー値を、数字がない場合は前日と同じ値を表示する)

と入力すれば、その日持っているポジションが人目でわかり、決済値を出すときに便利なはずです!


応援してくださるみなさまのためにも頑張ります!にほんブログ村 為替ブログ FX システムトレード派へ
人気ブログランキングにも登録中☆lanking.jpg
移動平均が出たので、次はこれを元に売買シグナルが出るようにしていきます。
ルールは、一般的によく言われる「ゴールデンクロスで買い、デッドクロスで売り」のシグナルが出るようにしてみます。

まず、2本目の移動平均を作らないとですね。

前回作った移動平均は参照している終値が相対セル、期間が絶対セルになっているので、そのままコピペすると参照した値が変わってきてしまいます。
なので、先に終値は列だけを固定(B1499⇒$B1499)、期間は行だけを固定($f$2⇒F$2)して、列全体にドラッグして修正しておくと良いと思います。07090501.jpg

それを列ごとコピーして隣の列に張り付けたら、項目名を「短気MA」「長期MA」に変えて、長期のほうの期間を試しに「10」にしてみます。

これで短期MA(5)と長期MA(10)の2本の移動平均が出ました!

次は、わかりやすいように短期MAが長期MAより高ければ"↗"(上昇トレンド)、低ければ"↘"(下降トレンド)、同じなら"→"(横ばい)と表示する列を作ります。
項目名は「トレンド」にしようかな。

関数は、やはり参照するセルが空白のときにエラーが出ないように

=IF(COUNT(短期MAと長期MAの2つのセル)=2,①トレンドを出す関数,"") とします。

①に入れる関数は、IF関数を使ってこんな感じにしました↓

IF(短期MAのセル-長期MAのセル>0,"↗",IF(短期MAのセル-長期MAのセル<0,"↘","→"))
(短期MA-長期MAが0より大きければ"↗"、それ以外の場合、短期MA-長期MAが0より小さければ"↘"、そうでなければ(即ち0のとき)"→"を表示する)07090502.jpg

続けると長くなりますね(((( ;゚д゚)))
しかし、今後もっと複雑な関数も出てくるかもしれないので、めげずに頑張ります(;´Д`)


というわけで、次はいよいよシグナルが出る列を作ります。

2本の移動平均がクロスするということは、クロスした翌日はトレンドが変化してるということです。
さきほど出したトレンドサインで見ると、"↘"の翌日が"↗"ならゴールデンクロス、"↗"の翌日が"↘"ならデッドクロスが出ていることになりますよね。

そうすると、関数は以下のようになります。

=IF(AND(日のトレンド="↘",本日のトレンド="↗"),"買い",IF(AND(前日のトレンド="↗",本日のトレンド="↘"),"売り","")

しかし、これだとトレンドが"→"だった翌日にそれまでとトレンドが反転してしまった場合にはサインが出ません。

考え方としては、本日のトレンドが"↗"のとき、遡って最初に出てくる"→"以外の記号が"↘"ならば「買い」、それその逆であれば「売り」、それ以外はサインなし というのが最もシンプルだと思います。

が、関数をどう組めば良いか模索中なので、とりあえず応急策だけ載せておきます(つД`)
"→"が2回以上続かなければ以下の関数で対応できます。
83b7c80c.jpg
=IF(本日のトレンド="↗",IF(前日のトレンド="↘","買い",IF(AND(前日のトレンド="→",前々日のトレンド="↘"),"買い","")),IF(本日のトレンド="↘",IF(前日のトレンド="↗","売り",IF(AND(前日のトレンド="→",前々日のトレンド="↗"),"売り","")),""))

これで売買シグナルが自動的に出るようになりました。


応援してくださるみなさまのためにも頑張ります!にほんブログ村 為替ブログ FX システムトレード派へ
人気ブログランキングにも登録中☆lanking.jpg

さて、売買サインをどういうルールで決めるかっていうのが難しいところなんですが、これはチャートと指標を重ねてみて、カンで探っていくしかないかな?と思ってます。 

まずは難しく考えずに、基本の移動平均でやってみようと思います。07090201.JPG 

試しに5日移動平均を作ります。
いろいろやり方はあると思うのですが、OFFSET関数を使うと後々移動平均の期間が簡単に変更できて便利です!
まず、項目行に1行追加して、「5」というセルを作ります。


セルに入れる関数は、参照するデータがないときにエラーが出ない
07090202.JPGように、IF関数で

=IF(COUNT(①参照する範囲)=$F$2,②参照する範囲の平均値,"")
(参照する範囲に必要な数の数値データが含まれていなければ空白にする)   という条件をつけます。

①はOFFSET関数を使って、F2のセルの数字を変えれば移動平均の期間が変わるように入力しました。
②に「AVERAGE()」(①の平均値)を入力して、5年間分だーっとドラッグします。
これで5日移動平均が完成ヽ(´ー`)ノ 


応援してくださるみなさまのためにも頑張ります!にほんブログ村 為替ブログ FX システムトレード派へ
人気ブログランキングにも登録中☆lanking.jpg
まずは過去のデータを取得するところから始めます。
私の知っている情報では、Yahoo!ファイナンスinfoseekマネーで主要通貨の4本値を取得できます。
スワップのことを考えてNZドルを基本にしていこうと思っているのですが、残念ながらYahoo!ではNZドルの4本値は見ることが出来ないので、infoseekで取得しました。

07090101.JPG
取り込み方法は、Excelのクエリという機能を使うと楽らしいのですが、infoseekではなぜかこの機能使えませんでした。゜(ノД`)゜。
試しにYahoo!でやってみると、こちらではできるようです。
それでも私はNZがいいのだっo(*`ω´)o

というわけで、ちょっと面倒ですが過去5年分+α(指標計算用)ぐらいのデータを地道にExcelにコピペしました。
今後の更新も手動でやらないとダメなんだよね。。何かいい方法ないかな? 

新しいデータを下に足していけるように、日付昇順に並べ替えました。
また、日付は見やすいようにMM/DD/YY表示に変更して(桁が揃うから)、1行目だけ固定表示にしました。
 


応援してくださるみなさまのためにも頑張ります!にほんブログ村 為替ブログ FX システムトレード派へ
人気ブログランキングにも登録中☆lanking.jpg
ようこそおいでくださいました♪♪


 ↓ランキングに参加しています↓
↓お一人様1日1回集計されます☆↓
にほんブログ村 為替ブログへ  lanking.jpg
プロフィール
職 業: サラリーウーマン
血液型: A型
現在地: 愛知県
出身地: 三重県
趣 味: 妄想(*´-`)
特 技: ヴォーカル♪
愛 車: アイ 三菱ジープ

メッセージやお問い合わせはコチラ☆
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
ブログ内検索

相場情報
パーツ提供:ALL外為比較

ALL外為比較

 
最新CM
[10/31 株の初心者の入門]
[03/22 FXランキングサイト]
[07/24 トモキ]
[04/23 Fred Buckley]
[04/21 Marta Stokes]
お世話になっている業者さま
 「為替-オンライントレード-INV@ST」

 

バーコード
広告
忍者ブログ [PR]