魔術師をめざして

魔術師を目指して、相場・数学・プログラム言語を研究しています。

luaプログラミング

若い頃に読んだという記憶だ。内容は、記憶に残っていない。
易しかった記憶もある。短期間に読めて分かり易かった。
入門者にもぴったりだと思う。皆さんにもお勧めだ。

実は、ぼくのところにも、今日、到着するんだ。

もちろん、古本だよ。眼が悪く、読める当てもない。

懐かしさだけで、注文したんだ。

今となっては、luaは、cybogr開発用の
魔術師にとって欠くことのできない重要な言語。
今後、ロボット技研は、MQL/Lua/Pythonの3つの
言語を駆使して、robot や、cyborgを作って行くだろう。

f:id:fxrobot:20210117053204j:plain

 

2号機

ロボット2号機と3号規の検討を始めた。
現在1号機の共同開発が始まったが、
その後のモデルの開発検討が、始まったのだ。

1号機:Fさんとの共同開発。重要な相場分析を
    F酸が担当する。貝hs津期間は2年。
2号機:魔術師単独開発。
    相場分析 bot(web crawler)を開発(by python
    し、botの成果de
  で2号機を作る。また、数年間以上使えるように、
  bot付きにして、自動メンテナンスできるようにする。
  
3号機:2号機をサイボーグ化したバージョン。
    botの進化バージョンも付く。
    cyborgは、魔術師しか作れない。
    現時点では、多分、魔術師も、作れない。

気の早い話だが、頭が具体的に働いていない時間は、
2号機、3号機の構想・具現化方法を考えている。
1号機には、時間がかかる。最初の1年は、
魔術師には準備期間だし、Fさんの結果待ちで、
魔術師には、何もできないけど、その間に、
botの開発をする余裕はないだろうと思う。
万が一、1号機が座礁したら、直ぐにbot開発を行う。
この辺りはFさん次第だ。
botは、過去データから、このロジックで、果たして、
利益が出るのかどうかのシミュレーション機能を
持たせたい。これは、一種のバックテストだね。
今後、魔術師の作るcyborgには、データ収集、
相場分析、バックテスト機能を持った
botが付いてくる。
つまり、cyborgは、このようなbot機能が付いている、
人間とのコミュニケーション機能を持ったEAなのだ。
ただし、cyborgは、まだ、ペーパーウェアだ。
魔術師の頭の中にしか存在しない。
ロボット技研の仕事は、果てしなく続く。
ロボット技研に参加したい人は、コメントを。

 

FM1号機(fmone)

Fさんと共同開発することになったロボットの名前だ。

Fさんへ:
1号機のプログラミングは、魔術師が担当しますが、
1号機の著作は2人のものです。
従って、1号機を基にF2号機の開発は、Fさんが、
プログラミングします。ですから、是非、MQLプログラミングに
挑戦してください。ぼくもお手伝いしますよ。
出来上がった2号機にぼくの権利はありません。
(ということにします)
ですから、2号機をFさんが販売することだってできます。
魔術師も2号機を作ろうと思います。サイボーグにするつもりです。
Fさんが、FXとMQLに真剣に取り組んでくれるなら、
1号機の後も、2人で、ロボット企業を運営するという手もあると思うのですが、いかがでしょう。
すべて1号機が成功してから考えてもいいですね。
会社名は、「ロボット技研」がいいですね。

相場分析

Fさんへ:

行く行くは、pythonで自動で相場分析を行う
プログラム(fxma)を作りたいと思うが、
精度の高いfxmaを作るためにも、
まずは人の手による、分析情報が欲しい。
例えば雇用統計発表のタイミングで、激しい値動きが起こる。
実際に、何度も現場を見てきた。
ドル円、ポンド円、ユーロドルという具合に、それぞれ
どう値が動き、例えば、ポンド円で、5分間は、
上がり(下がり)続け、5分後には、幾らで落ち着くか、
そして発表から、何分後に、元に戻り初めて。何分、何時間後に、
幾らに落ち着くのか、発表前の水準にには、どれだけ待てば戻るのか、
などを知りたい。
これでわかると思いまが、雇用統計がどっちに転ぶのかは予想しないで、
動くことは確かなので、その動き幅を正しくとらえることができれば、その動いた分を利益にできるという
戦略のためのデータが欲しいわけです。
考え方をご理解いただけれれば、細かい指図をせず、
お任せしたいです。Fさんの分析結果を見て、ロボットにどう
生かすか考えたいと思っています。
ロボとの成否は、分析結果次第なので,宜しくお願いします。

魔術師の道具箱 2021

今年の道具箱には、実用ツールしか入っていない。
lua → cyborg開発用
gawk → magic開発用
python → fxma(fx maket analyzer)開発用
deepro(deep learning robot)開発用

④ MQL → ea(fx robot)開発用

cyborg
自分の中にメソッドを持ったロボット
そのメソッドによって調整可能

magic
eaの開発を容易にするツール

fxma
eaのロジックを作るための相場分析ロボット

deepro
相場で勝つための機械学習をするAI-robot

興味が湧くプログラムがあったらコメントください。

cyborg

前回話題の、カスタマイズ・メンテナンス機能付き
robotをcyborgと呼ぶ。ちょっと子供っぽいけどね。
この機能の適切な実現は、は、画期的で、
高度の技術が必要だから、このくらいのインパクトの
ある名称が必要という考えから思い切ったのだ。
笑うなら笑え。
幾ら笑っても、この名を忘れることはできないだろう。
cyborgは、使う者の指令に応えることのできるEAなのだ。
そんなことが本当にできるかどうかは、分からない。

 

ロボットの画期的アイデア!?

2021年1月現在、取り組んでいる言語は、
[MQL]、[Lua]、[gawk] の3つ。

3つのすべてが、具体的目的を持った実用言語だ。

Luaは、wi(魔術師)が勝手に使うものだから、
pythonが得意な人は、pythonを使えば問題ない(?)
MQLは、目的が、ロボットなら、これしかない。
今回、何のために書くのかというと、
LUagawkが、皆さんの役に立つからだ。
それに、使い方に画期的アイデアがあるからなんだ。

本当に、画期的と言っていいんだな?
wi!(Je oui)。

Luaによって、ロボット(EA)を、
カスタマイズ・メンテナンス機能付きにする
というアイデアなんだ。
ただし、Luaじゃなく、pythonでも可能だ。
その場合、pythonは、完成したロボットのソース
のすべてを内蔵して、キーボードからの指示によって、
カスタマイズとメンテナンスが可能にするんだ。
つまり、ロボットを提供する時点から、この機能を
持っているということだ。こんなロボットは、
見たことも聞いたこともない。
よく、買ったロボットが、最初は儲かったけど、
儲からなくなったという話を、聞く。
そのロボットのパラメータを調整することを
メンテナンスと言っているんだ。
もし、買った業者に依頼すると、受けてくれたとしても、
高額になるだろう。
問題は、どういうパラメータの変更を予測するかだが、
その予測も適切に設計されているということで、
これもそのロボットの付加価値となる。
この機能を実現するには、目的が単純な割に、
python出は、重すぎるから、軽いLuaを使おうという
意味なんだ。この考え方を聞くのは、初めてだろう。
魔術師は、MQLとLuaで、こういうロボットを作るつもりだ。
gawkはどうなった?
それは、また、別の機会に。
そういえば、ロボットの映画で、新しいロボットの電源を入れると
初期設定ができる。今回のアイデアは、この時の
インスピレーションだろう。
魔術師のロボットは、初期設定と、中途設定が可能ということだ。
どうだろう、皆さんのロボットもこんな風にしたら。
最後に、このアイデアのための、Lua以外の言語を
紹介しよう。
既に書いたように、python出も可能だ。
pycファイルで配布すれば、コンパクトだ。
(pycファイルの作り方は、このブログの別の記事にある)
perlも比較的にコンパクトだ。exe化ツールにppがある。
wi愛用のツールだと、exeサイズが、2MB位。
あと、有力なのが、asruby(active script ruby)
ちょっとバージョンは古い(1.8.7)が、
exerbという便利なツールが同梱されていて、
exerb prog.rb で、exeができる。
exeファイルは小さく500KB位。(32bit版にすること)
上記すべて、ロボットのソースを内蔵する必要があり、
その分、サイズは増えることに注意。
じゃ、また、gawkで。

 

FM-Robot

この度、共同開発するロボットの、仮の名前だ。
AWKの名前の由来が、3人の開発者の頭文字だと
いうのを知ったので、その記念も兼ねて、
F(Fさん)M(魔術師)→ FM-Robotというのがいいんじゃないかという次第。
Fさん、いいですね。
完成したら、正式に、Fさんが命名してください。

FM-Robotは、このブログの前身で呼んでいた、
年金ロボット。そのものになりそうです。
もうけは小さいが、確実に儲けるロボットになるでしょう。
完成したら、二人で運用してみましょう。
それでうまく行くようなら、二人の家族にも使わせましょう。
2022年には、コードを書き始めていることでしょう。
2021年の開発主役は、Fさんですので、よろしくです。

MQLの本格学習開始!

これから約1年掛けて、EAプログラミングを
勉強する。その過程をここに書こうと思う。
皆さんも一緒に勉強しませんか。
そのためのプログラミング言語は、MQLという名前の言語で、
作ったロボット(EA)は、MT4というソフトで動作する。
まずは、MT4を使える業者のデモ口座を申請することだ。
wi(WIzard:魔術師)は、まだ、デモ口座も持っていない(笑)。
wiと一緒にロボットを始めよう!

MQLはc言語をもとに設計されているが、c言語ほど
本格的な言語ではないし、PLとしては、そんなに難しくはない。
難しいのは、FXの知識の部分だと思う。
wiは、MQLの勉強に1年掛けるつもり。
wiは、目にハンデがあるので、準備期間を長めに
取った次第。健康視力なら、3か月でいいと思う。
wiは、まだ目が大丈夫な頃、Haskellを3か月で覚えた。

 

ETロボット共同開発

Fさんとロボットを共同開発することになった。
細かいことは、メールで打ち合わせるが、
ここでも、秘密事項以外は、書こうと思う。

相場分析は、目と手を使って調査・分析するのが基本だけど、
p@ythonを使って自動で行うこともできそうだ。
MQLで調査ロボットを作ることも噛もうかもしれない。
行く行くは、RR(Research Robot)を作りたいとは思うが、まずは、
人間の分析官(Fさん)とプログラマー(魔術師)
のタッグで、1号機を、作るだろう。
完成したロボットは、共有財産なので、1号機の後、
改良して、Fさん専用のロボットを作ることは自由だ。
(細かいことを言うつもりはない)
だから、Fさんもぜひ、MQLの勉強を
ゆっくりでいいから、してほしいです。

RRは、1号機完成後にこそ必要になる。

なぜなら、相場は、変化するからね。

RARの結果を多ゲットのロボットに反映するツールも必要だろう。そこで、Luaが登場する。

 

 

luaとawk

すまん。また、これなんだ。
MQLに集中すべき局面なのだが、MQLが、余りに
詰まらないものだから、浮気している。
だけど、この2つは、非常に役立つ。と。ぼくの
直感は訴えるんだ。luaは、小さくてポータブルな言語だけど、
それだけじゃないんだ。面白い構造と、コンセプトを
持っている。haskellのように学究的言語ではないが、
探求に値する言語だと思うんだ。それに実用的なのだ。

今まで、数々のLWL(SPL)を使ってきた。
perl/python/ruby/julia/(groovy)/tcl/lulia という具合に。
その他にも数種類は取り組んだ。(jvm系だったと思う)
中でも、groovyは、分厚い本を購入し
読んだりもした(まだ本が読める時代だった)が、
性に合わなくて、止めてしまった。

何が言いたいかと言えば、こんなに使える選択肢があるんだじゃら、
自分に合ったパートナーを探してみないか?ってこと。
ぼくは、2021年、luaに出合って、今取り組んでいる。

もう一つ、古くからあり、古くからの知り合いの awk
昔から興味があったが、使う機会はなかった。
20年は経っただろうか。
2021年の今年になってから、使う気になったんだ。
awkは、具体的な便利さを皆さんに伝えたい、
と思っている。そのため、これから作るプログラムは、
ソース公開したいと思っているんだ。もう少し待ってほしい。
awkコンパイラというものも、できているとのことだが、
jvm系の様で、追っかけないことにした。
ぼくの場合、どうせ、exe化しなくてもいいしね。

※exe可について:
サイズが大きくていいなら(6.5MB以上)、
pythonが使える。もっともpythonなら、exeよりも、
pycの配布のほうがスマートで好ましいと思う。
小さなexeが必要なら、active script ruby 1.8.7がある。
古いバージョンなのでも、問題ないならお勧めだ。
exerbが同梱されており、紛れなく簡単にexe化
(500KBくらいから)できる。
また、perlは、ppというツールがある。ぼくは、
昔に買った商用ツールを使う。サイズは、2MBくらいだ。
juliaは、pachage compilerというツールを使えるが、
ぼくは試していない。
asruby<perl<pythonと必要に応じて使う準備はある。
が、魔術師は、今後、可能な限りluaを使いたい。
luaは、glueというツールを使い、srluaという小さな
exeと合体させexe化できるけど、ぼくは、使わない。
luaのフルシステムが小さい(550KB)ので、
同梱のluac.exeで作った、バイトコードと一緒に配布する。
luac -o prog.byt prog.lua と簡単だ。bytの部分はは何でもいい。
luac prog.lua でもいい。prog.out というバイトコードファイルができる。
動かすには、普通に、lua prog.out とする。
pythonのpycと似ているが、こっちのほうが数倍簡単だ。
それに、兎に角、pythonはデカいから。

 

露ロボット開発補助ツール

今回は言語マニアとしての言語話じゃなく、
まじめで実用的な話だ。読んで役に立つ話のはずだ。

ロボットを作るなら、選択肢は、MQL一択だ。
ただし、ロボット開発の補助をする言語なら他にもあるんだ。
魔術師には、3つある。
直接的補助ツールが2つ①②ある。
間接的補助ツールが1つ③だ。

lua
 ロボットにパラメータを与えたり、メンテナンスする
 プログラムを作るのに便利で、魔術師も用いる予定だ。
 
awk
 内部で使うmagic(過去記事参照)プログラム用だ。
 魔術師も使う予定で、作ったものに汎用性があれば、
 無償で公開してもよいと考えている。
 MQLでロボットを記述するには、なかなか面倒な部分が
 結構ある。それを容易にしようとするものだ。
 

④ptrhon
これは可能性だけど、ロボットに機械学習
させたいのなら、事前の学習に、使う。
専用のライブラリがあって、これを使うのは易しい。
しかし、MQLとの接続性は不明だ。
もう1つ現実的な用途がある。それは、ロボットの
ための データ収集と分析に使うということ。
ExcelVBAを使うという本が巷に多いが、
諸君、pythonが、あるじゃないか。

①②③を共に、pythonでやるのは可能で、そうするのが
正しいかもしれないが、言語マニアの魔術師は、
適材適所に、言語を贅沢に使うことが可能だから、
①②の選択となった。①②の機能を知れば、
客観的にも正しいはずだ。実際に、
使うところを見られれば、誰もが納得するだろう。
作る苦労を上回る、便利がなければ、
魔術師も作りはしない。

 

ふじいさん②

f:id:fxrobot:20210114082408j:plain

 

\227と安価です。

 安いだけあって内容がほとんどないです。

自作ロボットの「XX」の宣伝、客寄せの本でした。

それでも、テクニカルの基本について、まとmwてあり、

300円分の価値はありました。

XXの値段は観ていませんが、2~3万円と言ったところでしょう。ロボットが欲しいのなら、

こういうのか、自分で作るかですね。

 

EA(ロボット)のEA(魔術師)

MQLができることを、
皆さんは知って売るのだろうか。
ぼくは正直言って、分かっていない。
まず、これを知ることだ。

自分が持っているアイデアを、MQLが受け入れてくれるものかどうか
それを知ることが、ロボットを制するための重要な
ことなんだと思うんだ。
もちろん、何一つわからないという分じゃない。
自信を持ってわかると言えないだけで、
恐らくすでに大概のことはわかっているだろう。
過去、MQLのソースは分析したこともあるし、
文法の解説書を読んだこともある。
それにしても、それから長い時間が経ってしまったものだ。
その間には、長い入院生活もあった。
MQLに自信が持てなくなっているのも仕方がないことだ。
そんなぼくでも、今、MQLのエキスパートを目指しているんだ。

MQLは、C言語の構文を真似た、言語とは呼べないような情けない言語だという個とはわかっている。

このMQLを工夫してどこまでのことをやらせることができるのかってことなんだ。
ロボットを作ることが、視力の健康な、皆さんに

できないはずがないじゃないか。
近いうちにMQLにできることなどをここに書こう。
それをヒントに、稼げるロボットを考えようじゃないか。
ロボットのエキスパートアドバイザーとして、
皆さんの相談に応じられるようになることを目指そう。
つまり、ea の eaだね。

①et-robot & ②fxpm-robot

① et(Event driven Trade)-robot
② fxpm(Find for X(nknown) Price Movements)-robot

2つのロボットを検討している。
①は、Fさんとの共同開発を希望している。
 大きな影響のある経済指標の発表語の価格と平常時価格との
 価格差をサヤ取りするロボットで、利益幅は、
 小さいが、確実性の高い手法を用いるロボット。
②は、決まったイベントを追うのではなく、
未知の値動きを捉え、サヤ取りを行うロボット。
このロジックの実現方法は、まだわかっていない。
MQLでどう捉えられるかが、ミソとなる。調査中。

以上のように、どうしたら、勝てるロボットを作れるのかを、
日々、考えるようになった。いい傾向だね。
また、③として、機械学習が、果たして、MQL4/MQL5で、
どこまで書けるのか、pythonで書いた機械学習
MQLで活かせるものかどうかを解明しようとしている。
この目途は、まだ全然立っていない。

③は仮に、deep-robotと呼んでいる。