実は本番環境に移行した
Quoinexのbitcoin botはすでに動かしてある4/15からガチである。
できたら割と放置してしまうので
いつ頃運用開始したかも忘れる可能性がある、完全に日記だ。
だから負けるんだけどね、ワークしてるかどうかぐらいはちゃんとテストすべきなんだよね。
つまるところ俺の弱いところは管理がずさんだということ。
25万ぶっこんで10万ぐらい含み益が出てる所、
ちょいちょい騙し(足1本後にシグナル反転)食らってるけどそれ含めて勝率が半分ぐらいなんでいい感じかな。
トレンドの判定方法はもう少しマシなのがありそうだけど基本的には大差ないしモメンタム以外はあまり信用してない。
大事なのはモメンタムの期間だと思う。
そんな話がしたいのではなかった
プロンプトに表示して下にどんどん書き込んでるのが目障りな気がしている
出力系のキレイな書き方ってどうやって調べたらいいんだろうか
あとシステム障害時にあれこれやったほうがいいなあとか思いつつ。
ついったーにも書いたけどドテンくん買う前にこれを見てほしいんだよね
老婆心ながら
もうすでに買った人に対してはボラリティブレイクのトレンドフォローというのは
ひたすらゆっくりだ、そのズレがいい感じに収益になっているので
ちょっと早く入るぐらいはいいが利確を早くするのは基本的にはNGだよ。
あと使えなくなったときにMDDがくるんでその時に少しでも残るようにしとくといい。
使えないとわかるまでもゆっくりだ。それはまさに亀(タートル)のように。
勝てばいいのだ
DBに接続するのやめた、めんどくせえ。
増えればええのだ精神で行くことにした、手数が足りないので。
とりあえずVaRによる数量決定も実装したし
バグだけとってしばらく止まらなかったらマニー投入して本番だな。
そんで
また動画で座学やっていこう。
だいぶ溜まってしまったからな。(消化率4/21
さらっと繰り返す感じで学習していこう、どうせ俺忘れるし。
後必要な部分。
botはとりあえず想定してるように動いた。
残りのやること
約定履歴から決定係数による継続判定(botを評価するbot)
DBに接続してかかった時間やスプレッドやスリッページなどの取得。
VaRによるストップ・ロスの算出とそれに伴った数量決定(完全に忘れててやばいので本を読み直す。
DBに記入が一番やりたくないなあSQLがきらいだってことに最近だいぶ気がついてきた。
4日ぐらいテストしつつ構築したら本格的にやって
Udemy消化して
あとは機械学習でやりたいなあ、そのためにbFのヒストリカルデータを引っ張ってきたので。
もともとクソなサバだしめちゃくちゃにしても構わんだろって気分にだんだんなっていくから不思議だ。
VaRで数量決定
前書いたのどこだったかな。
もちろん覚えてないので探しに行かないと。
まず有効証拠金
accT2= client.get_trading_accounts()
a=accT2[3]['free_margin']
a
u'10655.04782'
そして安定のユニコード
昔使ってたDropBoxにMT4用のあったなあ、
ああMT4はいろいろ洗礼されているなあ。悲しみ。
ふむふむ
なんかすごくざっくりロット決まってるんですけど
どこでVaR使ってんだこれって思ったけどストップロスの算定から含めてVaR使ってたんだ。ストップロスを踏む確率がたしか1/2^9とかにしてあったはず。
そんでそれを何回耐えるかでロットが決まるみたいな?
つーことはストップロスの数値を決めてるところを読まないとだな
クローズを対数変化の数値にしておいて99パーセント点の数値を9倍してオープンしたときに掛けてストップロスだな。
ボラリティの算出に30分足の450本とってきてるなあ、
このへん全く覚えてねえwなんでその本数なんだっけ。
標準偏差だと仮定して1/2^9に到達するのが450本分だったんだっけかなあ、全然わからん。
もっと簡単にしても良くね?100の倍数にするとかさ。
まあいいかそんなに難しくも無いはずだ、30分の450本分の取得。
pandas.DataFrame.quantile — pandas 0.22.0 documentation
DF.quontile(q=0.99)or(q=0.01)でいいな
降順か昇順かを調べないと
pandasほんと簡単だなあ、約定価格との変化率みて9倍してストップにして
それを何回許容するかでロット数決めるんだな。思い出してきた。
そしてバックテストの勝率で何本分のクローズを遡るか算出してた気がする。
FXとcoinそんな変わらんやろ、そのまま450本つかお。
追記:
違うわ約定じゃなくて、平均値との差を見るんだ。
いろいろ克服したnemuiさんによるライブテスト開始
遊びに行くと言いつつライブテスト開始。
そこまで頻繁にトレンドが出ないシグナルなので結構暇だ。
どんどん損するようなシグナルで試せよというあれだけど。
ロット数を算出する部分作って動画見つつ暇潰そうか。
quoineポジションの取得ができない
GET ordersでstatusがliveならとか考えてたがそんなことはなく。
どうしたらいいんだろうかなあ。
もう完全に非同期でDBで管理とか考えたが現実的じゃないなあ、
どうやってポジションの取得するねん。いみがわからんと言いながらapiリファレンスをまた読みに行くのだった。悲しい。
ID指定したらスタッツが生きているかも
やっぱちがうなあ
ordersを見ているのが違う気がしてきた。
Tradeing accounts()
の中のポジションを見ればいいのか。
わかりづれえよおおお。
同時に売りと買いを入れるとポジションは(買いー売り)になる。
ユニコードで返ってくるので変換する。
いろいろググっても出てこないのでだれもQuoinexでapiを自分で叩くようなことはしていないんだろうなあ。
追記
.get_trades()でやりたいことができそう。
全然全くやる気がでないので遊びに行こう
pythonでインディケータをroopさせるとこまで
とりあえず本日の目標まで終わり。
DBにシグナルを記入しつつポジションの整合性を保つように設計しないといけないのが難しいなあ。
ひとまずやってみて考えよう。