« 2007年4月 | トップページ | 2007年6月 »

2007年5月31日 (木)

自分を変えられるか。

 右肩上がりの銘柄を見つけるのはた易い、しかし付いていくのは非常に難しい。

 反対に下げトレンドの銘柄は損切りが出来ず何処までも付いて行ってしまう。

           *

 右肩上がりの銘柄に対する投資家の心理

* このままいつまでも上がり続けるものではないと思い。買えない。

* 売ってしまった値より騰がってしまったので買いにくい。

* 押し目を待っているのになかなか下がってこない。

* ここで利食っておかなければ下がってしまうと思い。すぐに利食いをしてしまう。

           *

 下げトレンドの銘柄に対する投資家の心理

* このままいつまでも下がり続けるものではない。きっと反発するに違いない。

* 下がったのでこれ以上下がっても後は知れていると思うので騰がっている銘柄よりも買いやすい。

* ここが底だと思い。いつまでも損切りが出来ない。

           *

詰まりあがっている銘柄よりも下がっている銘柄の方が買いやすいのです。騰がっている銘柄は絶えず自分の買いたい値より上にあります。下がっている銘柄はそれに比べ買いやすいのです。

 それでいつも上手くいかないのであれば思い切って、買い難い方を買うのです。もちろん高値つかみの恐れもあります。でもそれはロスカットで守ります。そして上手くいけば、色んなストップを用いて利益を伸ばしていきます。

 投資のスパーン も変えてみるとか、買いのタイミングを時間的にずらすとか、例えば、いつも寄り付きに買っているのであれば、引けで買うとか、ロットを少なくして、精神的な余裕を持つとか、色々試してみるべきです。

心理的に落ち着かないと言うことはどこかが間違っているか、もしくはその投資方法が自分に合っていないということです。

 自分には負けのパターン、もあれば勝ちのパターンもあります。負けのパターンに陥ったとすれば、それが何処に問題があるのか、精神的に負けているのか、タイミングが悪いのか、銘柄の選択が悪いのか、市場の選択が間違っているのか、冷静に考えてみることが必要です。

 色々と試してみないと答えは出ないでしょうね。

        ********

今日の結果  

    平均   PF(万円)

5/31 17875   322.3   +3.0

6330 東洋エンジ 750   +12   2000株  

5479 日金工    592   +6   1000株

5017 AOCHD  1662   +6   100株

 今日は持ち株が全部騰がってくれました。

6330 の買戻しと、半分買戻し出来なかった分をサイン通りに5711に乗り換えて、それが騰がってくれたのが素直に嬉しい。

まだ下駄を履いてないので結果は分からないのですが、今のところは正解でした。

 本当に騰がっていく銘柄についていくのは難しいです。これが出来ないと十分に儲ける事が出来ないと思います。(トレンドフォローの場合)

あとは1916、8111の爆上げがあればと期待しています。

気分が良いので長々と書いてしまいました。実際は少ししか儲かってないのに・・・・

| | コメント (0) | トラックバック (0)

日経・システム・my取引の比較

 今日のような日経平均の強い日には、平均に勝つことは難しい。なぜかと言うと、資金を全部使っていないからです。

 システムにも絶えずまけています。

 システムは余計な事を考えないから。

 my取引が勝つ時は、何か急騰する銘柄を当てた時か。日経平均が下がる時です。

 今日は珍しくシステムに勝っています。

6330は750円を一時、突破しました。それから下がっていますが。

片や5711は徐々に上がってきています。

発行株数の違いで5711はゆっくりしたテンッポで1円ずつ上がっていきます。6330は750円を挟んで10円幅で動きます.

1916、8111はにらみ合ってほとんど動きません。

銘柄によってまったく性格が違いますよね。

 後場騰がりますように。

| | コメント (0) | トラックバック (0)

8111

 今回の8111の買い参入は、Progre02の買いサインによるものではありません。たぶんProgre02で検証しても良い結果はでないでしょう。

 ボラティリティ・ブレイクアウト(長大陽線)、出来高、信用取り組み、などによるものです。いつもこれでやられる事も多いのですが。敢えて挑戦してみます。

 後は手仕舞の方法を考えるだけです。

どこで手仕舞えば良いのか難しいです。またすんなりとは騰がってくれません。上がるにしても必ず振るい落としがあります。

 過去のこの様な低位仕手株のチャートを見てシナリョウを描きます。

| | コメント (0) | トラックバック (0)

2007年5月30日 (水)

取引の思考パターンを変えてみる。

 今日は軟調でありました。6330も下がりました。12:40の730円を割った時には売ろうかとも思いました。しかし、それでは金曜日と同じ事になってしまいます。ここはじっと我慢です。何処まで我慢ができるか。

 幸いにも6330、5711、8111は2:00から騰がってきました。

 1916、5017、5479は下がってしまいました。5479は大きく下がっているので別ですが、他の2つはLCになるまで待ちます。

 騰がれば騰がったで売れないし。下がってもある程度、下がらないと売れない。この許容範囲は人によって違うのだろう、手仕舞いはいつも難しい。

 いつもこれで悩む。裁量取引の上手な人はルールを持ってしているのだろうか。本当に上手な人にはルールなんて要らないのではないか。

        ********

今日の結果  

    平均   PF(万円)

5/30 17588   319.3   -2.4

6330 東洋エンジ 738   -8   2000株  

5479 日金工    586   -5  1000株

5017 AOCHD  1656   -29   100株

目標の330が遠のきました。残念

今スクリーニングで何かよい銘柄が無いか探しています。

今日買った8111ゴールドウィンもスクリーニングと昨日の上げで買ってみました。

 次回は このスクリーニングについて思ったことを書いていこうと思います。

 

| | コメント (0) | トラックバック (0)

元気の良いのは9:30まで

 いつもと同じ、パタ-ン

8111 ゴールドウイン を寄りつきに買ってみました。

9:15そこで利益確定すれば一万の利益、6330、5711もだいたい各々一万の利益になっていました。

粘ってみるか、

下がっても今のところは小幅であるし。

6330 も750を抜けないでいる。 5711ももう1段上げて欲しい

銘柄だけが増えていきます。6銘柄になってしまいました。それぞれ一万ずつ取れれば6万と言う皮算用をしています。

5月末まで後2日、330万で終われば御の字ですが。チョット苦しい。

8月末までに、360万に乗せたいと思います。

そして目標は、2月末までに420万に乗せることです。

強い信念でいきます。

つづく

| | コメント (0) | トラックバック (0)

2007年5月29日 (火)

右肩騰がりのトレンド

 トレンドには上昇、下降、持合の3種類ありますが。どの場合でも短期であれば儲けることが出来ます。

 でも高値掴みをした場合。下降トレンドの場合、戻ってきません。持合の場合利益が出ません。上昇トレンドの場合、そのトレンドが続く限り、その時点でたとえ高値掴みであったとしても、それ以上に騰がり利益が出ます。

 私がデートレの銘柄を選ぶとすれば、上昇トレンドの銘柄を選びます。その方が安全だから。

 またそのような銘柄は何回でも挑戦できます。

        ********

今日の結果  

    平均   PF(万円)

5/29 17672   321.7   +4.3

6330 東洋エンジ 746   +21  2000株  

5479 日金工   591    -1  1000株

5017 AOCHD  1685  +19   100株

6330 は強かった 果たして、明日750円を突破できるだろうか。

 実際の取引で金曜日に704円で離してしまったのが悔やまれる。

実際の取引は先週、少しのプラスで終わっていました。でも気分はマイナスでした。

つづく

| | コメント (0) | トラックバック (0)

PM2:45起動

 つづきUwsc06

まず、UWSCを開きます。

1番右のボタン設定(O)をクリック、設定(X)をクリック

Uwsc08設定フォームのスケジュール設定をする(S)をクリック

スケジュール設定フォームのスクリプトに各uwsを開くUwsc09

タイマーの設定なしのボタンをクリック

        *

タイマー設定フォームをそれどれ以下のようにします。

* 証券会社のホームページを開くUWSファイルの場合Uwsc10_1

時間指定(T)

毎日  14時  30分

* 売り注文UWSファイルの場合

指定Windowが現れた時(W)

Title を ++売り注文++

* 買い注文UWSファイルの場合

指定Windowが現れた時(W)

Title を ++買い注文++

        ********

 これで、全て完了です。

朝、UWSC と エクセルファイル”その日” を開きます。証券会社のホームペイジを開き、その位置と大きさをいつもの状態にしておきます。

ここで正常に動くかどうかもう一度テストしておいた方が良いでしょう。

これで証券会社のホームペイジを閉じ、PCをつけたままで出て行きます。(注 証券会社のホームペイジのアイコンは見える状態にして置いてください。)

 PM2:30になれば証券会社のホームペイジが自動的に開きます。

 PM2:45になれば監視ファイル”その日”のマクロが実行され、売りサイン、買いサインの銘柄があれば、メッセージを出します。

 それにUWSCが上で設定したように、メッセージボックスのタイトルに反応し注文を自動的にしてくれます。

          *

 でも誤発注の恐れがあります、またほかに何かの事故が起こるかもしれません。使用には十分気をつけてください。

 そして、スクリーンセーバがどのように影響するのかまだテストしていません。その他にも色々問題が出てくるでしょう。

 またこれにプラスして,PM3:15にはすべてのWindowを閉じてPCの電源を自動的に切ってくれるようにすれば完璧なんですが、今はこれまでとしておきます。

          *

今までの感想

 色々なサイトを訪問したお陰で、思ったよりも早く自動売買システムを作る事が出来ました。感謝いたします。

 自動売買システムの作り方にはほかにも色々あると思います。UWSCを使わず。VBAからIEを操作する方法もあるようです。優秀なサイトにそのやり方が載っていました。またいつかそれにも挑戦したいと思います。

 しかし、色々なサイトの中には高い料金のセミナーの誘いのホームページなどもあれば、ソフトの売り込みのホームページもありました。中には親切なサイトもありますが。 

 でも、これらのサイトは凄く参考になります。今巷でどのような事がなされているのか,またどのような事に皆が興味を持っているのか、が汲み取ることが出来ますし、 また色々なヒントを得ることも出来ます。

やろうと思えば何も高い料金を払うことはないのです。

 例えばセミナーに参加するとします。地方に住んでいれば交通費も掛かるでしょう。そして最初は入門のレベルから入ります。しかしそれでは目標は達成できません。そこからもう一歩進もうと思えば、本を買って勉強するか、ネットで調べて勉強するかしないと次のレベルには到達しません。

 また、地方に住んでるために、参加したくても参加できない人もいるかもしれません。

 そしてそれをクリアーした人がまた高い料金と交通費を払い次のレベルのセミナーに参加する事になります。それで終わればよいのですが、多分それでもまだ勉強を繰り返さないと目標達成は出来ないのではないでしょうか。(セミナー勧誘ホームページを見れば初級レベルと中級レベルに分けていますから、それから考えてみても想像が付きます。何回セミナーに参加すれば目標達成出来るのか、どれほどお金をつぎ込めば目標達成出来るのか)

 しかし、それ以上のレベルの人は色々のサイトから独自で自分に必要なところを取り出してきて、好きなように作ることが出来るでしょう。

 それなら始めから独学で作ってしまうほうが早いように思うのです。

 私もまだまだレベルは低いですが、少しでもその手助けになれば幸いです。やる気さえあればお金を掛けなくても出来るのですから。最低限の本は必要ですが。

           *

 投資には色々のハンディーがあります。

 地方に住んでるハンディー

 投資ツールのハンディー

 相場環境のハンディー

 投資知識のハンディー

 投資情報のハンディー  

 資金規模のハンディー 

など

出来るだけこれらのハンディーを取り除き皆が同じ条件でこの投資の戦場を戦えればと考えています。そお言う自分が1番重いハンディーを背負っているかもしれませんが、偉そうな事を言って申し訳ありません。

 自分より遥かに優秀なサイトは過去にいっぱい在ったから、かなり自分は遅れていると思うし、スローペースです。またそのサイトからのパクリも多いです。

色々なサイトを書いている人ありがとう。

このシリーズはこれで終わりです。 

また今後色々勉強して、その成果をこのブログに書いていこうと思います。

| | コメント (0) | トラックバック (0)

トレンドフォローの悩み

 トレンドフォローですから、右肩騰がりの銘柄が好きです。でも、何らかの事情で、売ってしまうことがあります。ビビリな性格なものですぐ振るい落としに引っ掛かってしまいますし、利益確定も早いです。

 それでしばらく調整を挟み、騰がってきます。

慌てて買い戻します。その時には売った値より5%も高くなっています。高値掴みの危険性がそこには伴います。それでもトレンドフォローである以上、危険を冒してでも上昇トレンドに付いて行かねばなりません。

 いくら綺麗な右肩騰がりの動きをしていたとしても、儲けるのはいつも難しい。

 それで6330を@733で1000株買い戻しました。サイン通り持っていれば良いものを本当にアホでした。

 それと実際の取引よりもシュミレーションの方が成績が良いのにもむかつく・・・・・・

 午前中に投稿するつもりが出来ていませんでした

| | コメント (0) | トラックバック (0)

UWSCの買い発注スクリプト

つづき

買い注文のスクリプト、基本的には売りと同じ、違うところは

メッセージボックスのタイトル("++買い注文++")   

項目数 TEMP[8]

Kabusuu= TEMP[8]  株数の項目が増えます。

後は各ボタンの位置を調べる必要があります。記録(R)をして、メモ帳にそれを落とし調べていきます。

完成は下のようになります。

        ********

DIM TEMP[8]
EXCELORDERWINDOW = GETID("++買い注文++")   // エクセルのメッセージボックスのID
TEMP[1] = GETSTR(EXCELORDERWINDOW,1,1)    // メッセージボックス"++買い注文++"の内容をTEMP[1]に

 FOR i = 2 TO 8
  TEMP[i] = TOKEN(" ",TEMP[1])       // ” ”で区切って各項目をTEMP[i] に入れて行く
 NEXT

IWAIID=GETID("岩井証券 - Microsoft Internet Explorer")  // 岩井証券ウィンドーのID
ACW(IWAIID,1,1,1000,700)     // ACWはウィンドーをアクティブにします
MOUSEORG(IWAIID,1)     // マウスを左上に持ってくる
BTN(LEFT,CLICK,270,80)     //  現物取引ボタンクリック
SLEEP(8)
BTN(LEFT,CLICK,55,160)     //  買い付注文ボタンクリック
SLEEP(5)
Code=TEMP[6]                   // 銘柄コード
SENDSTR(IWAIID,Code,2,TRUE,TRUE)    // 発注表の銘柄コードテキストボックスに銘柄コードを入れる
SLEEP(3)
BTN(LEFT,CLICK,520,260,300)
SLEEP(3)
Kabusuu= TEMP[8]                  // 株数
SENDSTR(IWAIID,Kabusuu,2,TRUE,TRUE)   // 発注表の株数テキストボックスに株数を入れる
SLEEP(3)
BTN(LEFT,CLICK,320,390,300)
SLEEP(3)
BTN(LEFT,CLICK,320,450,300)
SLEEP(3)
BTN(LEFT,CLICK,250,490,300)
SLEEP(3)

CLKITEM(EXCELORDERWINDOW,"OK")     // エクセルのメッセージボックスの"OK"ボタンをくりっくしメッセージボックスを閉じる
MOUSEORG(0)

        ********

メッセージボックスを閉じる前に実際にはパスワードを入れ実行ボタンを押させます。

つづく

これで、UWSCの引き鉄が出来ました。

次回は この引き鉄をどのようにしてPM2:45に引かせるかです

| | コメント (4) | トラックバック (0)

2007年5月28日 (月)

他のブログを見て

 最近の自分の取引を反省する。

今日も買いサインの出た銘柄が有ったので、買ってしまった。

それで何を反省したかと言えば、今まで多少なりともプラスであった、ためリスクのとり方が大雑把になっていたのではないかと。

 リスクは1-R(2.5万)と決めていたはずであります。それから逆算してポジションサイズとLCを決めていたはずなんです。買った銘柄は

 1916 @170 2000株

 5711 @619 1000株

 5017 @1681 100株

です。これらはシュミレーションに入れません。絶対にサイン通りに取引すると誓います。それでLCの値を決めます。1916は158円、5711は594円、5017は1550円とします。

 今まで目標価格を決めていませんでした。損小利大の取引が目標なのでこれまでは敢えて決めていませんでした。2月はそれで上手くいきました。今は上手くいっていません。これまでの対処法はトレーディングストップの率を儲けに応じて小さくして行くというものでした。

 もし目標値を決めるとすれば2-R利益でしょうね。それを決めていれば6330もすんなり利益確定が出来たでしょう。(前回の利益を含めればそれに近いです。)でも過去に何度も爆上げした経験もあるのでなかなか心理的に難しいのです。

 一応2-Rで考えますと。

1916 195円、 5711 679円、 5017 1920円

となります。

今の相場つきから言って、LCにはすぐ引っかかり、目標値にはなかなか到達しそうにも思えません。

今回はもっと利益確定を早くしようと考えています。5017も1699円が一瞬ありました、利益確定してもよいぐらいです。

        ********

今日の結果  

    平均   PF(万円)

5/28 17587   317.4   +2.1

6330 東洋エンジ 725   +2  2000株  

5479 日金工   592   +16  1000株

5017 AOCHD  1666  +10   100株

| | コメント (0) | トラックバック (0)

怒った

 金曜日6330から振り落とされてしまった。くやしい~

そのかわりに1916日成ビルドに再チャレンジしました。(171円買いサイン点灯)

5711三菱マテも610円買いサイン点灯。

負けが続いているときの対処法を日曜日に考えてみました。少ないポジションサイズで大きい利益を狙わず、小さい利益をこつこつ拾っていき、しばらくの間は勝ち癖を付けていこうという結論に達しました。

上値が重いので、前場の高値掴みだけは気お付けなくてはなりません。

後場 

5017 100株  

1916 1000株 買い増し

この2銘柄でいきます。 

しかし、いつも、いつも理想の取引とは程遠いものを感じます。 

| | コメント (2) | トラックバック (0)

2007年5月27日 (日)

UWSCの売り発注スクリプト

 つづき

まず先に出来あがったスクリプトを載せます。

        ********

DIM TEMP[6]                                  //  変数の宣言
EXCELORDERWINDOW = GETID("++売り注文++")     // エクセルのメッセージボックスのID
TEMP[1] = GETSTR(EXCELORDERWINDOW,1,1)       // メッセージボックス"++売り注文++"の内容をTEMP[1]に

 FOR i = 2 TO 6
  TEMP[i] = TOKEN(" ",TEMP[1])       // ” ”で区切って各項目をTEMP[i] に入れて行く
 NEXT

IWAIID=GETID("岩井証券 - Microsoft Internet Explorer")   // 岩井証券ウィンドーのID
ACW(IWAIID,1,1,1000,700)     // ACWはウィンドーをアクティブにしてくれます
MOUSEORG(IWAIID,1)     // マウスを左上に持ってくる
BTN(LEFT,CLICK,270,80)     //  現物取引ボタンクリック
SLEEP(8)
BTN(LEFT,CLICK,55,190)     //  売付注文ボタンクリック
SLEEP(5)
Code=TEMP[6]               // 銘柄コード   
SENDSTR(IWAIID,Code,2,TRUE,TRUE)    // 発注表の銘柄コードテキストボックスに銘柄コードを入れる
SLEEP(3)
BTN(LEFT,CLICK,340,240,300)
SLEEP(5)
BTN(LEFT,CLICK,920,400,300)
SLEEP(5)
BTN(LEFT,CLICK,320,430,300)
SLEEP(3)
BTN(LEFT,CLICK,320,480,300)
SLEEP(3)
BTN(LEFT,CLICK,250,530,300)
SLEEP(3)

CLKITEM(EXCELORDERWINDOW,"OK")     // エクセルのメッセージボックスの"OK"ボタンをくりっくしメッセージボックスを閉じる

MOUSEORG(0)

        ********

説明

EXCELORDERWINDOW は適当に作った定数

GETID("++売り注文++")の ++売り注文++ は先日VBAで作ったメッセージボックスのタイトル

TEMP[i]  はDIMで宣言した変数

GETSTR(EXCELORDERWINDOW,1,1) はメッセージボックスの内容を取得してTEMP[1]に送ります。

          *

FOR i = 2 TO 6
  TEMP[i] = TOKEN(" ",TEMP[1])      

 NEXT

// トークンの切り出し (指定文字で区切ったものを返す)
戻値 = TOKEN( 区切文字, var 文字列 )

  区切文字: 文字列を区切る文字を指定
  文字列: 文字列は区切られた後、残りの文字列を返す

TEMP[1] =

( 銘柄: 黒崎播磨 銘柄コード: 5352 )

これを” ”で区切っていき TEMP[i]に入れていきます。Vba61_2

TEMP[3] =銘柄:  TEMP[4] =黒崎播磨

TEMP[5] =銘柄コード:  TEMP[6] =5352

となっています。

          *

Code=TEMP[6]               
SENDSTR(IWAIID,Code,2,TRUE,TRUE)    

SLEEP(3)
BTN(LEFT,CLICK,340,240,300)

Codeは適当に作った定数

SENDSTR はウィンドーの2番目のテキストボックスにCode(5352)を送ります

// 文字の送信
SENDSTR( ID, 文字列, [番号, 送信モードフラグ, ACC指定] )
  
  文字列: 送りたい文字列
  番号: 左上から数えたエディトコントロールの順番 (1から指定) 証券会社の画面によってこの番号は変わリます。

          *

SLEEP(3)
BTN(LEFT,CLICK,340,240,300)

この部分はボタンの位置340,240を指定してクリックさせていますがこれではボタンの位置が変わったとき(例えばウィンドーの大きさがなんらかで変わってしまったとき)など的確にボタンが押せません。

それで、本当は下のようにボタンのCaption,("成行")を認識させてチェックボックスをクリックしたいのですが。今はなでかこれが出来ないんですよ。

CLKITEM(IWAIID,"成行")

          *

CLKITEM(EXCELORDERWINDOW,"OK")

自分の作ったメッセージボックスのCaption,("OK")は認識してくれて上手く行きます。,("OK")ボタンをクリックしメッセージボックスを閉じてくれます。

// アイテムのクリック 
// (ボタン、メニュー、チェックボックス、ラジオボタン、リストボックス、コンボボックス、タブコントロール、ビューリスト、ツールバー)
戻値 = CLKITEM( ID, アイテム名, [種別, チェックOn/Off, 番号] ) 
  ID: Windowを識別するID
  アイテム名: ボタン、チェックボックス、ラジオボタンのキャプションの文字
                     種別: チェックするアイテム種別
         CLK_BTN      // ボタン、チェックボックス、ラジオボタン

つづく

| | コメント (0) | トラックバック (0)

UWSCの操作

 つづき

まずUWSCを開きます。Uwsc01_1

1. 右から2番目のボタン、記録(R)をクリック

  試しに証券会社のホームを開いてください。

2. 真中のボタン、再生(P)をクリック

 1.でした作業を自動でしてくれるはずです

3. 左から2番目のボタン、保存(S)をクリック

  適当に名前を付けて保存

4. 先にメモ帳を開いておきます。

  左のボタン、読み込み(L)をクリック

  読みたいuwsファイルをメモ帳にドラッグドロップしてください。

  メモ帳にそのスクリプトが現れます。Uwsc05

  (そのuwsファイルを実行したい時はファイルを選択し、開く(O)ボタンをクリックし、2.再生(P)をクリックしてください。)

  (完成したスクリプトは1番下にあります)

        ********

MMV(120,28,27)
MMV(121,28,505)
BTN(RIGHT,DOWN,121,28,76)
MMV(121,28,15)
BTN(RIGHT,UP,121,28,221)
MMV(121,28,33)
MMV(122,28,375)

MMV(150,33,28)
MMV(151,33,353)
BTN(LEFT,CLICK,151,33,165)
MMV(151,33,4139)
MMV(151,33,1314)
ACW(GETID("Microsoft Internet Explorer","IEFrame"),58,9,842,460,0)
MOUSEORG(GETID("Microsoft Internet Explorer","IEFrame"))
MMV(93,24,412)
MMV(93,24,1441)

MMV(743,74,28)
MOUSEORG(0)
MMV(801,83,215)

この様なわけの分からんスクリプトが出てきます。

          *

説明

MMV(743,74,28)  MMVはマウスの移動 

MMV( x, y, [ms] )
  x, y: 位置 
  ms: 実行までの待ち時間 (ミリセカンド)

 これは全部削除して構いません

その代わり時間を空けるため SLEEP(0.5) を入れます。

ページが変わる時などより確実にするため長く時間を空けます。

// スリープ
SLEEP( 秒 )
  秒: スリープする秒数(最小=0.01)

          *

これで10行ほどのスクリプトになりました。

        ********

BTN(RIGHT,DOWN,121,28,76)
SLEEP(0.5)
BTN(RIGHT,UP,121,28,221)
SLEEP(0.5)
BTN(LEFT,CLICK,151,33,165)
SLEEP(0.5)
ACW(GETID("Microsoft Internet Explorer","IEFrame"),58,9,842,460,0)
MOUSEORG(GETID("Microsoft Internet Explorer","IEFrame"))
SLEEP(0.5)
MOUSEORG(0)

        ********

説明

この5行はデスクトップ上のアイコン操作

アイコンを右クリックし、開く(O)をクリックさせます。(何処にアイコンがあるかで座標は変わります。)

BTN(RIGHT,DOWN,121,28,76)

// マウスボタン
BTN( ボタン, 状態, [x, y, ms] )
  ボタン:  LEFT, RIGHT, 

  状態:  CLICK(0), DOWN(1), UP(2), 

  x, y: 位置 

  ms: 実行までの待ち時間 (ミリセカンド)

           *

Uwsc04 ACW(GETID       ACWはウインドーをアクティブにします。そして位置、幅、高さを決めます。GETIDはウィンドーのタイトル収得ですがタイトルが分かっているので適当な定数IWAIIDを作り直接それをいれます。

IWAIID=GETID("岩井証券8707 - Microsoft Internet Explorer")
ACW(IWAIID,0,0,1000,500)

となります。(使っておられる、証券会社のWindowのタイトル を入れて下さい。)

          *

// ウィンドウ状態変更
ACW( ID, x, y, [幅, 高さ, ms] )
  ID: Windowを識別するID
  x, y: Window位置
  幅, 高さ: Window幅,  高さ

// 指定Window の ID を返す
戻値 = GETID( タイトル, 

  タイトル: 識別したいWindowのタイトル (タイトルの一部分だけでもOK)

          *

MOUSEORG(GETID("Microsoft Internet Explorer","IEFrame"))
SLEEP(0.5)
MOUSEORG(0)   //スクリーン座標に戻す時はゼロを指定

// マウス座標を相対座標にする、 またはマウスとキー情報を直接ウィンドウへ送る
MOUSEORG( ID, [基準指定 ] )

          *

上を下のように変えます。

MOUSEORG(IWAIID,0)
SLEEP(4)

    :

MOUSEORG(0)

となります。

実際には : の間にログイン画面に入り、口座番号、パスワードを入れるスクリプトを書きます。直接画面のテキストボックスに入れる方法とキーボードの操作を記録させて使う方法があります。記録させる方法は安定性に問題がありますがスクリプトを書く必要が無いので簡単です。後で上でしたように無駄な部分を省いて行き、座標の微調整をしていきます。

  ウィンドーが変わればそのウィンドータイトルも変わるので変えて下さい。

 まずはキーボードの操作を記録(最初の1.の操作です。)を試してください。ここの部分は秘密の部分なのでよろしくお願いします。

それで、最終的に以下のようになりました。

        ********

BTN(RIGHT,DOWN,121,28,76)
SLEEP(0.5)
BTN(RIGHT,UP,121,28,221)
SLEEP(0.5)
BTN(LEFT,CLICK,151,33,165)
SLEEP(0.5)
IWAIID=GETID("岩井証券8707 - Microsoft Internet Explorer")
ACW(IWAIID,0,0,1000,500)
MOUSEORG(IWAIID,0)
SLEEP(0.5)
MOUSEORG(0)

        ********

つづく

次回は 売り注文、買い注文のスクリプトを書きます。

アイコンを右クリックし、開く(O)をクリックさせます。

| | コメント (0) | トラックバック (0)

2007年5月26日 (土)

ランキングで今週を振り返る

 システムが出来あがり、そろそろ監視銘柄を入れ替えないといけない時期に来ているようです。

 それでヤフーの週間値上がり、値下がりランキングを見ていました。

 今週は凄く危険であった事が分かります。監視銘柄の内3銘柄が値下がりランキング20位に入っていました。

6位 日本板硝子(株)

563 642 -79 -12.31%

8位 共栄タンカー(株)

295 333 -38 -11.41%

17位 日本冶金工業(株)

1,372 1,507 -135 -8.96%

3銘柄は5月前半まで良く騰がっていました。共栄タンカー、日本冶金工業(株) は 売買サイン通り動いていれば、またはタイトストップを掛けていれば、上手く逃げる事も出来たと思います。また日本冶金工業はボラティリティ(76)が大きくなっていましたので、買付可能株数がここ最近0になっています。

 しかし、日本板硝子は違いました。交通事故に遭ったみたいなものです。S安の前日も上がっていましたし、売買サインもその日買い(3)になっていました。私も買い戻そうとマウスに手が行きかけました。買っていれば逃げられません。

 6330もガッカリしました。日曜日には今後の作戦と銘柄選びをしようと思います。

 三菱マテリアルが609円で買いサインに変わります。自信ありませんが

| | コメント (0) | トラックバック (0)

VBAの記述.2

つづき

 売り注文、買い注文のメッセージボックスを表示するSUB

それほど難しいプログラムではありません。

        ********

Sub 売り注文()
'
' 売り注文 Macro
' マクロ記録日 : 2007/5/21  ユーザー名 : ペニー
'
    Dim iCount As Long

        iCount = 3
       
    For iCount = 0 To 75 Step 5
   
        If Worksheets("Sheet2").Range("C3").Offset(iCount, 0) = 2 Or Worksheets("Sheet2").Range("C3").Offset(iCount, 0) = 4 Then
    
            If Worksheets("Sheet2").Range("A3").Offset(iCount, 0) = 1 Then
            
                 MsgBox "銘柄: " & Worksheets("Sheet2").Range("B3").Offset(iCount, 0) & vbCr & "銘柄コード: " & Worksheets("Sheet2").Range("A2").Offset(iCount, 0), vbOKOnly, "++売り注文++"
                
               
            End If
            
            
        End If
       
     Next
'
End Sub

        ********

説明

If Worksheets("Sheet2").Range("A3").Offset(iCount, 0) = 1 Then

売りサインが出て、セルA3(HOLDフラッグ)が1の場合 以下を実行します。

持っていなければ現物取引なので売り処理をしても意味がありませんし、誤発注の原因になります。

           *

Vba61 MsgBox " 銘柄: " & Worksheets("Sheet2").Range("B3").Offset(iCount, 0) & vbCr & " 銘柄コード: " & Worksheets("Sheet2").Range("A2").Offset(iCount, 0), vbOKOnly, "++売り注文++"

MsgBox関数

" 銘柄: " 注 銘柄:の前後に半角スペースを必ず空けてください。

セルB3は銘柄名  vbCr は改行

" 銘柄コード: " 注 前後に半角スペースを必ず空けてください。

セルA2は銘柄コード

vbOKOnly はメッセージボックスの中にOKボタンが付きます

"++売り注文++" はメッセージボックスのID 

UWSCはこのIDを認識し売り注文のuwsファイルを自動実行します。

        ********

Sub 買い注文()
'
' 買い注文 Macro
' マクロ記録日 : 2007/5/21  ユーザー名 : ペニー
'

Dim iCount As Long

        iCount = 3
       
    For iCount = 0 To 75 Step 5
   
        If Worksheets("Sheet2").Range("C3").Offset(iCount, 0) = 3 Then
    
            If Worksheets("Sheet2").Range("A3").Offset(iCount, 0) = 0 Then
            
                 MsgBox " 銘柄: " & Worksheets("Sheet2").Range("B3").Offset(iCount, 0) & vbCr & " 銘柄コード: " & Worksheets("Sheet2").Range("A2").Offset(iCount, 0) & vbCr & " 買付株数: " & Worksheets("Sheet2").Range("A4").Offset(iCount, 0), vbOKOnly, "++買い注文++"
                
               
            End If
            
            
        End If
       
     Next
'
End Sub

        ********

説明

Vba62_1  売り注文SUBとパターンは同じ

買いサインが出て、セルA3(HOLDフラッグ)が0の場合 以下を実行します。1の場合(持っている時)は実行されません。これによって重複買いを防ぎます。

" 買付株数: " の項目が増えました。セルA4は単位株数(資金に余裕があれば増やしても良いと思います。)

"++買い注文++" はメッセージボックスのID 

          *

売りに優先順位は有りませんが、買いはその時によって優先順位を付けた方が良いかもしれませんね。一応、行の上の銘柄が優先となっています。

                      *

つぎは指定の時間が来ればマクロを実行させるSUB

プロジェクトウィンドーのThisWorkbookを選択します。左上のコードの表示ボタンをクリックVba60

コードウィンドーの左上をWorkbook、右上をOpenと選択します。

        ********

Private Sub Workbook_Open()

Application.OnTime TimeValue("14:45:00"), "表示"

End Sub

        ********

これをコピーしてください

OnTime 時間が来ればSUBを実行しなさいと言う命令

("14:45:00"), この時間は好きなように変えてください。

"表示" SUB名 昨日作った表示SUB 

(このSUB名が間違っていたため2日間上手く行かず悩んだ。プログラムを作っていてこの様なつまずきがよくある。どこも間違っていないのに、本を何回見てもこの間違いは分からない。この様な初歩的な間違いが本に書いてあるわけがありませんから。)

これで、出きるはずです。何度もテストしてください。

次回は UWSC のスクリプトの共通部分(証券会社毎に発注画面、そのボタン位置が違いますので全てを書いても意味がありません)

VBAと同じように命令文も数個しか使いません

| | コメント (0) | トラックバック (0)

2007年5月25日 (金)

VBAの記述

 つづき

それで今回VBAで何をしたいかと言いますと、まずPM2:40になれば、サインの出た銘柄があればBeep音と、フォームにその銘柄を表示し知らせます。(ここまでは半自動用)

そしてサインの出た銘柄の売りサイン銘柄から先にメッセージボックスで銘柄名、銘柄コード、株数を表示します。

そのメッセージボックスのIDをUWSCに認識させてUWSCに発注作業をさせます。

           *

 まずVBEを開きます。ツール(T),マクロ(M)、VBE(V)をクリック

Vba51 赤丸左上のフォームの挿入をクリック

ツールボックスのみどり丸、ラベルをクリック、フォーム上に14個Vba52のラベルを作ります。

(左上2番目から下に7個作ってください。次に右上2番目から下に7個作ってください。後 でプログラムを書くときにLabel1,Label2・・・と決めるのでこの通りにしてください。)

Vba54Captionは空けておきます。

      *

その上に右左一個づつラベルを作ります。

Captionにそれぞれ”買いサイン (3)”、”売りサイン(2)OR(4)" と入れます。

BackColorで色を付けます。パレットで好きな色を選んでください。

           *

挿入(I)、標準モジュール(M)をクリックしコードウインドーに

以下のコードソースをコピーしてください

        ********

Sub 表示()
'
' 表示 Macro
' マクロ記録日 : 2007/5/23  ユーザー名 : ペニー
'
    Dim i As Long
    Dim j As Long
   
    i = 1
    j = 1
   
    Dim iCount As Long
    Dim kaiMei(8) As Variant
    Dim uriMei(8) As Variant
   
   
    iCount = 3
   
       
    For iCount = 0 To 75 Step 5
   
        If Worksheets("Sheet2").Range("C3").Offset(iCount, 0) = 3 Then
       
             For counter = 1 To 100
                Beep
             Next counter
            
             kaiMei(i) = Worksheets("Sheet2").Range("B3").Offset(iCount, 0)
            
            
             i = i + 1
            
         End If
            
        If Worksheets("Sheet2").Range("C3").Offset(iCount, 0) = 2 Then
            
             For counter = 1 To 10000
                Beep
             Next counter
            
             uriMei(j) = Worksheets("Sheet2").Range("B3").Offset(iCount, 0)
            
             j = j + 1
            
        End If
       
         If Worksheets("Sheet2").Range("C3").Offset(iCount, 0) = 4 Then
            
             For counter = 1 To 20000
                Beep
             Next counter
            
             uriMei(j) = Worksheets("Sheet2").Range("B3").Offset(iCount, 0)
            
             j = j + 1
            
        End If
      
    Next
   
   
    サインの出た.Label1.Caption = kaiMei(1)
    サインの出た.Label2.Caption = kaiMei(2)
    サインの出た.Label3.Caption = kaiMei(3)
    サインの出た.Label4.Caption = kaiMei(4)
    サインの出た.Label5.Caption = kaiMei(5)
    サインの出た.Label6.Caption = kaiMei(6)
    サインの出た.Label7.Caption = kaiMei(7)
    サインの出た.Label8.Caption = uriMei(1)
    サインの出た.Label9.Caption = uriMei(2)
    サインの出た.Label10.Caption = uriMei(3)
    サインの出た.Label11.Caption = uriMei(4)
    サインの出た.Label12.Caption = uriMei(5)
    サインの出た.Label13.Caption = uriMei(6)
    サインの出た.Label14.Caption = uriMei(7)
   
   
   
    サインの出た.Show vbModeless
   
    売り注文
   
    買い注文
   
   
'
End Sub

       ********

説明

           *

  For iCount = 0 To 75 Step 5
   
        If  Worksheets("Sheet2").Range("C3").Offset(iCount, 0) = 3 Then

iCountが0から5づつ75まで増えていきます。

Sheet2のセルC3を基準にOffset関数で(行、列)移動したセルが3であれば、と言う条件式です。iCountは5づつ増えますから、セルC3,セルC8,セルC13,・・・・となります。

           *

  For counter = 1 To 100
                Beep
             Next counter
       

これはBeep音を出します。100で1回、1000で2回ぐらいです。

           *

kaiMei(i) = Worksheets("Sheet2").Range("B3").Offset(iCount, 0)

i = i + 1

セルC3が3であれば、kaiMei(1)にセルB3(銘柄名)を入れてiが2になります。

           *

後の2つの条件式(売り)も同じパターンです。

セルC3が2か4であれば、uriMei(1)にセルB3(銘柄名)を入れてjが2になります。

            *

サインの出た.Label1.Caption = kaiMei(1)
サインの出た.Label8.Caption = uriMei(1)

”サインの出た”はフォーム名そのフォーム上の各LabelのCaption に
kaiMei(i)買いサインの出た銘柄、uriMei (j)売りサインの出た銘 が入ります。

            *

サインの出た.Show vbModeless

Showは”サインの出た”フォームを表示
vbModelessにするとフォームを表示された後他の作業が出来ます。
   
    売り注文 は SUB名で 売り注文SUBの呼び出しです。 
   
    買い注文 は SUB名で 買い注文SUBの呼び出しです。 

次回は  売り注文、買い注文のメッセージボックスを出すSUBの記述をします

金曜日なので書き次第、公開していきます。

| | コメント (0) | トラックバック (0)

疲れた

 結局、前場、離したところが底でした。

6330は損失が無いからそれで良いともいえますが。振り落とされた時、利益確定した後にさらに騰がってしまったような時は、すごく自分に腹が立ちます。

大きく損をした時よりも、よけいに腹が立ちます。

それでも実際には最近取引した銘柄の多くが売値より100円ほど下がっていますので、50万ほどは資金を守っているのです、しかし腹が立ちます。

愚痴ばかり言ってすみません。どうにかして気を落ち着かせたい。

これで、振り出しに戻ってしまったことになります。

何かいい投資のアイデアは無いものか

        ********

今日の結果  

    平均   PF(万円)

5/25 17481   315.3   -2.2 

6330 東洋エンジ 723   -7  2000株  

5479 日金工   576   -7  1000株

5017 AOCHD  1656  -6   100株

  5479の損をカバーしてくれていた6330が下がったのは痛い。

 利益が出ないと面白くない。

 含み損を抱えての取引は耐えられない。

 スカートする取引をしてみたい。何か良い方法は無いものか。

 PM2:45に監視ソフト”その日” が無事フォームで知らせてくれました。AOCも少しは戻したので、売り買いの銘柄はありませんが、フォームは予定通り出ました。

| | コメント (0) | トラックバック (0)

自分の下手さ加減に気分が悪い

 6330を前場の1番安いところで離してしまいました。9:30ごろの713円で離していれば2万の利益があったのに、そこでは戻すのではないかと思うので売れない。様子見となる。

 そして10:08に安値702円を着ける。損失になるので704円で離す。それから騰がっていくのであった。非常に気分が悪い、2日前の8万の利益が飛んでしまった。残念

 6330の売買サインはまだHOLDの(1)です。よってシュミレーション取引はHOLDとします。売り予定値が681円となっていますので、トレーディングストップ次第となります。かりにストップ率を6.0%とすると699円で前場これに限りなく接近したことになります。

 またストップ率を3.0%にしますと721円となります。

 今の時点で5017は売りサインとなっています。これも100株だけなのでHOLD。

 問題は5479 どないかして・・・・・・・本当は5479から売らなければなりません。

        *******

 システムトレードも非常に難しいのです。

自分はすぐにサインを無視するし。

システムの通りしようとすれば、裁量と違って絶対に天井では離せないし。

自分の都合の良いときだけシステムに従い、悪いときは無視をするし。

これでは裁量取引となんら代わる事が無い。自分の都合の良い記事とか材料を探しているのと同じだ。

 今後どのようにこのシステムと接していけばよいのだろうか。個別株の現物取引というシステムトレードでは皆があまりしない事をしている、その難しさもあるだろう。しかしこのスタイルは変えたくないし、もっと深く追求していきたい。システムを信頼できる自分にするにはシステムの検証以外に無いであろう。またリスクを抑えるにはポジションサイズの管理以外に無いと思う。

 悩む・・・・・・

| | コメント (0) | トラックバック (0)

エクセルの加工

 前にも書きましたが、まとまった物が出来ましたのでエクセル側のことを書きます。重複するかもしれませんがお許しください。

 Progre02に追加すればよいのですが、(途中までは内容がまったく同じ)私の場合2ブックありますので、本当に注目している銘柄をそこから選び、また新しい銘柄も付け加えなくてはなりませんから、その日の動き監視用に1ブック新しく作ります。ブック名は”その日”としました。

05  そのブックの1枚目をまず作ります。(先日も書きましたが不十分なところもありますので1から改めて書きます。)

各項目は5行ごとに入れます。

赤で囲んだ部分がヤフーファイナンス今日の値動きから取得した20分遅れのデータです。D列が一応現在値、セルC2はその時間、

セルA1を選択し、データ(D)、外部データの取り込み(D)、新しいWebクエリ(W)予めお好みの銘柄のヤフーファイナンス”今日の値動き”を開いておいて、Web参照(B)ボタンをクリックします。

外部データ範囲のプロパティ(A)を開き図のようにします。07_1

赤丸のようにします。ブックを開いた時、20分おきにこのクエリを実行させます。

列の幅を調整する(A)のチェックをはずします。

つぎの銘柄も同じようにセルA6を選択し、同じ作業をします。また後でプロパティを変更する時は必ずこのセルを選択しなければなりません。

セルA3、セルA8、セルA13・・・・・はHOLDフラッグその株を持っていれば1、持っていなければ0を入力します。

セルB3、セルB8、セルB13・・・・・は銘柄名

セルA4、セルA9、セルA14・・・・・は単位株数

セルC3、セルC8、セルC13・・・・・=東洋エンジ!$AA$3

この”東洋エンジ”はシート名です。これで1枚目のシートは出来あがりです。

          *

 シート2枚目以降はProgre02(売買指示シート)をそのまま53行までをコピーします。

{セルB1}・・・=Sheet2!$H$2

{セルC1}・・・=Sheet2!$I$2

{セルD1}・・・=Sheet2!$J$2

{セルE1}・・・=Sheet2!$D$2

{セルF1}・・・=Sheet2!$C$2

ここまででひとまず終わりです。

          *

09次からは毎日の作業になります。PM8:00にセルA2を選択し、データ(D)、データの更新(R)、(注セルA2を選択しなければ出来ません。)

3行目に行を挿入します。(セルH4:セルAI4)を(セルH3:セルAI3)にコピーします。また。(セルB1:セルE1)を(セルB3:セルE3)にコピーします。多分その時1枚目のシートの

セルC3、セルC8、セルC13・・・・・=東洋エンジ!$AA$4

になっていると思います。AA$3に直して下さい。

次回は VBAの部分を書きます。これは全自動取引を目指したものですが。半自動でも使えるようにしました。

| | コメント (0) | トラックバック (0)

2007年5月24日 (木)

自動売買栄えある1号は

 記念すべき自動売買1号は5017AOCHDとなりました。(実際にはバアーチャルで、PM20 2:30に手動でクリックしました。@1663で100株だけ買いました。)

 まだまだテスト段階で、4銘柄しかリストアップしていません。偶然にも5017がサインを出しているのを前場に気づきました。(4銘柄の監視だとめったに買いサインは出ません。このテストチャンスを逃す手は有りません。)

14  この計画を始めてからプロシジャー名の記述ミスがあって、今日まで指定の時間にフォームとメッセージボックスを出すことが出来ませんでした。

 昨日の夜やっと間違いに気づき、指定の時間にフォームとメッセージボックスを出せるようになりました。

あのAOCがこの時にサインを出したというのは何かの縁を感じます。

しかし、まだUWSCが上手く行かないところがあります。(証券会社の注文画面の各ボタンのCaptionを認識してくれないんですよ。)これさえ上手くいってくれれば安定するのに。何処が間違っているのだろうか?不可解

 それで今は半分完成と言ったところです。まだまだ問題はあります。証券会社の画面は1時間を越えて何も操作をしていないと閉じられてしまいます。またスクリーンセイバーの問題もあります。

 今後これを一つ一つ解決していきます。

        ********

今日の結果  

    平均   PF(万円)

5/24 17696   317.5   -1.3 

6330 東洋エンジ 730   -2  2000株  

5479 日金工   583   -9  1000株

5017 AOCHD  1662       100株

   AOCHD @1662 100株 買い

 6330もそう毎日は騰がらない。5479はもっとしっかりして欲しい、これだと5202を持っているのと同じではないか、今後5202よりは下になって欲しくない。こういう所に儲けられない原因がありそうです。

 AOCHDは100株から買えますので自動売買のテストにはもってこいの銘柄です。本格的に上昇するのはもっと先ではないかと思っています。もしも下がったとしたら買い増しも考えています。私にとっては相性の良い銘柄で、AOCを持つと世界情勢の事が気になります。

つづく  

このエクセルシートの作り方を書いていきます。

| | コメント (0) | トラックバック (0)

自信はありませんが

 新しく作った監視システム(自動発注用)”その日”がはじめて買いサイン(3)を出しました。06

最近当システムの成績が悪く、まったく自信がもてないのですが、参考に載せておきま す。

 5017 AOCHD です。

 ただ注文実行はPM2:45と決めていますので、それまでどうなるか分かりませんが。

6330、5479 出だしは低調でしたがここは我慢します。6330はプラスに転じました。問題はこれからどの位置にトレーディングストップを置くかです。重要な問題です、よく考えてください。

がんばれ AOC,園児君

| | コメント (0) | トラックバック (0)

途中経過4

 つづき

 売り注文の取引作業

1. 現物取引をクリック     ページ変わる

2. 売り付注文をクリック     ページ変わる

3. 銘柄コードを入力      (銘柄コード

4. 銘柄検索ボタンをクリック  ページ変わる

5. 成行にチェックを入れる

6. 当日限りにチェックを入れる

7. ”注文確認へ”ボタンをクリック  ページ変わる

8. 暗証番号入力

9. ここまでとします。

前回と同じように、この作業の通りUWSCのスクリプトを書いていきます。スクリプトの書き込みはメモ帳を使いました。

出来あがれば"売り注文.uws","買い注文.uws",でファイル保存しておきます。

 UWSCの使い方は他のサイトに詳しく書いてありますので。ここでこれ以上書いても重複しますので、ここで調べてください。

http://www.uwsc.jp/

http://oaive.com/columns/uwsc1

 このブログでは今までしてきたProgre02の売買指示サインを使って、スイッチとして作った"売り注文.uws","買い注文.uws",ファイルをどの様にして押すか、またその過程、それに伴うエクセルの加工、VBAの追加を書いていきます。

 次回は  エクセルの加工 

| | コメント (0) | トラックバック (0)

2007年5月23日 (水)

負け惜しみ

 5202板ガラス の今日のような下げに対しどのように対処すべきなのか、常日頃から考えておかなければなりません。

 私は幸運にも離したばかりで、持っていませんでした。昨日買おうとしましたが、寸前でやめました、これ以上玉を増やしたくないのと、6330が騰がっているのでそちらに神経を集中させたいからでした。また先日、7246プレス工業も寸前のところで逃げることが出来ました。

 今まで2月27日から30万ほどドローダウンをしていますが、うまく逃げることが出来なかったとしたらさらに50万ほどの損失をしていたことになります。

 誰にもこのような突発的な下げを予測することは出来ませんが、唯一つ対処法があるとすれば。それはポジションサイズの管理だと思います。

 300万の資金で考えて。S安をたとえ食らったとしても1000株のポジションですと10万の損ですみます。もう少し買値が低いところでしたら、6万ですむかもしれません。これぐらいの損であれば1週間で回復することも可能でしょう。

 ところが目一杯の5000株でS安を食らったとしたら50万から30万の損失になってしまいます。これを回復するには普通で3ヶ月から半年はかかってしまいます。

 よく考えてみましょう。

        ********

今日の結果  

    平均   PF(万円)

5/23 17705   318.8   +1.0 

6330 東洋エンジ 732   +7  2000株  

5479 日金工   592    -4  1000株

 PM2:15以降尻すぼみでした。

| | コメント (0) | トラックバック (0)

誤発注

 UWSCを使った自動発注の最終段階のテストを今しています。

見事売り発注まで漕ぎ着けました。しかし売ったのは隣の銘柄でした。残念

 売りの発注画面の一つ前の画面には持ち株に対し”売り”ボタンが上下に並んでいます。

 それで、売りたい銘柄のコードが正しく入ったなら、その銘柄の”売り”ボタンが上に来ますので、上手くいきます。

 今回はプログラムのミスでコードが入りませんでした。

最後までいったので半分喜んでいますが、何らかの方法で誤発注防止対策をしないと使い物にはなりません。

| | コメント (0) | トラックバック (0)

あぶなかった

 5202が業績予想を発表した。今朝は圧倒的に売りが多い。ストップ安もありそうだ。

全自動のシステムだと昨日の上げでPCは買ってしまっていただろう。

 決算発表前は怖い。

監視銘柄の大半が逝ってしまった。

今後この時期の対処のし方と、決算が終わった後で監視銘柄を変えていこうと思う。

| | コメント (0) | トラックバック (0)

2007年5月22日 (火)

途中経過3

 つづき

 買付の場合は株数を最小単位とします。そして試しに各注文の項目を記入させて、パスワードまで入れて、後ワンクリックで終わりという所までやりたいと思います。それで何度もテストをします。安定性に不安がありますから。実際に買いたければそこで手動でクリックします。

 まずはエクセルの方を整えないと行けないのですが。気持ちが先に先に行っています。

                      *

 それで、エクセルの方から必要な項目は何かを掴むために、証券会社のホームページで実際の取引作業をいつもどの様にしているかを辿っていきます。

 口座番号、パスワード、を入力して、会員ページを既に開いている状態から始めたいと思います。

         *

1. 現物取引をクリック     ページ変わる

2. 買付注文をクリック     ページ変わる

3. 銘柄コードを入力      (銘柄コード

4. 銘柄検索ボタンをクリック  ページ変わる

5. 注文株数を入力        (株数

6. 成行にチェックを入れる

7. 当日限りにチェックを入れる

8. ”注文確認へ”ボタンをクリック  ページ変わる

9. 暗証番号入力

10. ここまでとします。

そしてこの作業の通りUWSCのスクリプトを書いていきます。ここでの問題は各ボタンの位置です。各ボタンの位置を調べながら作業を進めていきます。

 買い注文において、エクセルの方で必要な項目は(銘柄コード)、(株数)である事が分かりました。

 実際には注文実行ボタンをクリックまで自動でさせて完了ですが、 それは充分テストし安定性を確認してからです。それに持ち株に売りのサインが出た場合、他の銘柄に買いサインが出ていても当然、売り注文が優先されます。

 それと買いの重複、持っていない株の売りサインを無視するために、HOLDフラッグを設けます。{セルA3}{セルA8}・・・・ホールドは(1)、NOホールドは(0)と入力します。

{セルA3}{セルA8}・・・・にその銘柄の単位株数をいれます。

          *

 本当は売り注文から先にしなければなりませんが先に買い注文からしました。

 次回 同じように売り注文を辿っていきます。

| | コメント (0) | トラックバック (0)

 5202をシュミレーションで買いにしても良いが。面倒なのでやめておきます。

 6330は上に抜けたようです。いつもは朝だけ元気で後場下げるのですが、今日は久しぶりに安心して見ていることが出来ました。

        ********

今日の結果  

    平均   PF(万円)

5/22 17680   317.8   +3.1 

6330 東洋エンジ 725  +21  2000株  

5479 日金工   596  -11  1000株

銘柄を絞った方が気が楽かもしれない。6月終わりには350万に乗せたいが。そのためにはこの2銘柄が100円ほど騰がらないと達成できない。今まで良く勝っているようでそれほど利益が伸びていないのは同じ数だけ負けているからです。

 勝率45%のシステムであれば、その状態も日常の事で。一つの銘柄が大きく上がってくれればそれで良いのです。5202も良いのですが。

 6330に期待をかけます。

| | コメント (0) | トラックバック (0)

再参入しようか迷う

 UWSCのスクリプトを書いていました。売り注文用のスクリプトです。証券会社(岩井証券)発注画面を見ながらボタンの位置など一つ一つ確かめながらスクリプトを書きこんでいます。

 古いPCを使っていますので、余裕を持たせゆっくりとした動きにしています。

 これらの作業はいつ実行しても同じ状態で自動作業をさせるためにしています。

一つ一つの作業を記録し、テストをし、ずれているところを微調整し、それをひとつのスクリプトにまとめて行きます。細かい作業ですが後々これが上手く行くと嬉しいし、期待が膨らみます。

          *

 前場、先日売った5202板硝子が上がってきました。

再参入しようか迷うところです。売買サインは買い(3)になりました。

チャート的には、プラス、マイナス50円の動きはノイズといっても良いでしょうね。その動きを我慢して付いていけるかが問題だと思います。

6330 は順調、5479 は分かりません、後場期待

| | コメント (0) | トラックバック (0)

2007年5月21日 (月)

途中経過.2

 つづき

 『PM2:45自動発注計画』のエクセルの部分(フォームを使い買いサイン、売りサインの出た銘柄の表示、Beep音でのお知らせ)までは何とか出来ました。

 あとはUWSCの部分です。まずUWSCに何をさせたいのか,何が出来るのか、これを明確にします。

 させたい事

 1. 売買サインが出れば,自動で立ち上がる。

 2. 売買発注の各スイッチを作る。 (条件に応じてのスイッチ(.uwsで保存)を沢山作っておいて良いと思う。人によってこの部分は考え方が違うと思いますが。)

 3. そのスイッチ(保存した.uws)を条件が合えば自動実行させます。

 出来る事

 4.UWSCのスケジュール機能。これを使えば 1.は出来ます。

 UWSCはメッセージボックス、フォームのIDを認識する機能が有りますから、逆にこの部分はエクセルでしっかりとメッセージボックス、フォームを作っておく事が必要です。

 5. メッセージボックス、フォームのIDを認識。これを使えば 3.は出来ます。4.と同じ。

 6.2.はUWSCは基本的な記録機能、を使えば出来ます。

 ただしそれだけでは安定性の問題があり、スクリプトを一部書き換えなくては成りません。

 7. メッセージの内容を読み込むことが出来ます、ボタンの認識が出来ます。(操作の安定性をあげます。) 

 次に問題点を大きく捉え、それを細分化していきます。

 問題点

 1. 証券会社によってウィンドーウの内容が違う。(ボタン、テキストボックスの位置がちがう。)

 それで、この部分は市販の本でも載せにくい部分で、楽天などは例として書かれているのですが、他の証券会社では自分でよくどの位置にどのボタンが在るのかを見ておかねばなりません。エクセルの部分は皆さんと同じなので書きやすいのですが。

 2. 発注ウィンドーウも売り買いで異なります。

 3. いつも同じ位置にそのウィンドーウが在るか。(無ければ機能しませんし、誤発注と言う問題が発生する可能性も出てきます。安定性、安全性の問題です)

 4. ときどき証券会社のウィンドーウ内の書式が変わる。(偶然にも私の使っている証券会社では5/19日に発注ウィンドーが変わりました。逆指値が使えるようになりました。)

 5. 同時に数銘柄が買いサインを出せばどれを優先にするのか。

 6. 逆に同時に数銘柄が売りサインを出せば全てを即座に売らなければ成らない。(発注は全て成り行き現物とします。)

 7. 買い注文の重複。

   売買指示サインには重複はありませんが。(ただし日足で見た場合。)サイン無視でHOLDしている場合。デートレをしている場合。などが考えられます。

   それで発注時間をあらかじめ決めておいて1日一回の取引とします。売り注文はその限りではありません。いつでも逃げるときは全部売ります。

             *

 証券会社によっても違いますし、秘密の部分もあるし、基本的な考えは他のサイトからのパクリだし、そんないろんな問題があって、個人的には使えても、一般的には使えないといったところです。まだまだこれから細かい問題が出てきますが、一応やりたいことの流れがつかめたと思います。

 ここまで来ればもう出来たも同然で、一つ一つその問題を解決していくと、自ずと出来あがります。(頭の中ではおぼろげに出来あがっています。)

つづく

| | コメント (0) | トラックバック (0)

反発してホッとしています

 先週はマイナスで終わりましたが、ある程度損切りして正解だったと思っています。

7246、4112、この二つを損切りしていなければさらに損失が14万ほど増えるところでした。今後どの銘柄の反発力が強いか、また新値を抜いてくるのがあるのか慎重に見極めていかねば成りません。

6330、5479が少し反発しホッとしています。

 今日前場の安いところで仕込めたならとも思いますが。これ以上ポジションを増やしたくないのと少しの勇気がありません。

        ********

今日の結果  

    平均   PF(万円)

5/20 17566   315.1   +3.7 

6330 東洋エンジ 704  +11  2000株  

5479 日金工   607  +15  1000株

 このまま調整を終えて騰がればよいのに,この2銘柄が騰がってくれれば先週の損切りが生きてくれます。14万のプラスに等しくなります。

プレスもがんばれ

 

| | コメント (0) | トラックバック (0)

2007年5月20日 (日)

途中経過

 つづき

 色々と悪戦苦闘をしています。それでステップ2として時間(PM2:45)がくれば、サインの出た銘柄があれば音で知らせ、その銘柄をフォーム上で表示するプログラムを作っています。

それに平行して UWSC Pro (お試し期間14日) を色々と試しています。その中のRecIEも使ってみました。記録した通りにマウスが動きIDコード、パスワードも打った通り再現してくれます。その動きを見ていると面白いです。

 それを保存し、翌日、再生してみました。しかし上手く行きません。ウィンドーの位置がずれていると上手く行かないようです。

 ヘルプを読みながら、スクリプトを書いて直接UWSCからエクセルを操作しようと試みていますが,これはVBAと同じで勉強が必要です。

 UWSCが実際に使えるかは今のところ分かりません。遊びとしては面白いです。(他のサイトで勉強していますが凄く奥が深そうです。14日でマスターするのは無理かも。しかしフリー版でも使えそうです。)

 システムトレードと言ってみても、自己満足の領域で、まだまだお遊びです。これがコンスタンスに利益が上がるか、大きなドローダウンを食らったなら遊びではなくなるのでしょうネ。

 マイペースで行きます。(完全自動『PM2:45自動発注計画』の完成は7月終わり頃にしたい。そのころには相場も良くなっているかもしれません。)

つづく

| | コメント (0) | トラックバック (0)

2007年5月18日 (金)

負けパターン

 後場はどうしょうも無い下げであった。難平買いだけはしたくないし。損切りも嫌だしここはじっと耐えるしかないのだろうか。サイン通りにしたからといって儲かるものでもないが、結局はサイン通り動いた方がよさそうだ。

 6330も前場は良かったのに、ほかにつられ後場急に下がり出す。売り予定値681に限りなく近づく。周りを見ても真っ青、全滅と言ったところだ。

どの銘柄であってもマイナスの状態なのだから、ほんとうはCP多めのポジションでここしばらくは様子見が良いのかもしれない。

また負けパターンに陥っているとも言える。

高値でタイトなストップを掛けて上手く利益確定する。(共栄タンカー、三菱マテリアル、など)また上手い損切りで逃げる。ここまでは予定通りだ。

 そこからがいけない。ポジションが無いと寂しいのと、いつも利益が欲しいと言う気持ちからすぐに買ってしまう。

 山と谷があるのだから。期間をずらせば良いのにそれが出来ない。いつも同じ過ちを繰替えすのである。(わかっちゃいるけどやめられない)

 損を取り戻そうと、リバウンドねらい、ナンピンの失敗が墓穴を掘るのである。

        ********

今日の結果  

    平均   PF(万円)

5/17 17339   311.4   -4.5 

6330 東洋エンジ 693  -7  2000株  

5479 日金工   592  -31  1000株 

ところで、『 PM2:45自動発注計画 』 を始めたんですが。

しかし、UWSCのヘルプを見ていて分かったんですがUWSCのフリー版からエクセルをコントロールできないみたいなんですよ。残念

(当ブログのコンセプトはお金をかけないでどれだけ出来るか。ですから)

そこで、5銘柄に増やしPM2:40に買いサイン(3)、売りサイン(2)(4)が出た銘柄を警告音で知らせるとか,点滅させるとか、してみようか。

まあ、今日なんかも寄り付き高く、1時過ぎが一番安くそれから少し戻してきたのでPM2:45の取引は有効でないかと思っています。

| | コメント (0) | トラックバック (0)

せっかく園児君が元気なのに

 6330、5479のポジションサイズについて考える。

今の私のポジションは

6330 2000株

5479 1000株 です

今日は5479が大きく下がり、がっかりです。6330が騰がっているのが救いです。

いまのところ5479の売買サインはNOポジ(0)でサインを無視してHOLDしています。(アホです)

売買指示のポジションサイズの指示は5479が1000株、6330が2000株です。

この違いは両銘柄の最近のボラティリティの違いによるものです。

6330の方がノイズが少なく。滑らかに騰がってきていると言えます。

5479の方がうねりが大きいと言えます。(残念ながら私はそのうねりのトップで買ってしまいました。まだ強気の考えは崩していませんが。)

5479は今後タイミングを計り、うねりの底で拾う事を心がければ、上手く行くのではないでしょうか。

ちなみに両銘柄の17日平均ボラティリティ(ATR)

6330  (21)     5479 (27

です。参考にしてください。        

| | コメント (0) | トラックバック (0)

2007年5月17日 (木)

ヤフーの20分遅れのデータ更新

 つづき

 多くの人がRSSを使いリアルタイムでデータを取得し、自動売買をされていると言うのに、なんともスローな話しで申し訳ありません。

自分の投資スタイル、投資環境を考えてみると。今のシステムでも十分で,これにPM2:45の発注システムが出来ればと考えています。

しかし、現実には昨日の結果(サイン)を見て今朝の寄付きで発注(または後場寄り付きの発注)するのが簡単でほとんどの人がそのようにしておられると思われます。

ですから、普通ではなかなか出来ないPM2:45の発注に意味(わずかな優位性)があるのではないでしょうか。

            *

03  それで、そのステップ1として試験用に1銘柄だけの売買指示シートを新たに作ってみました。

042ページ目にクエリ(テーブル番号は16です、または15です、クエリの使い方は3月2日の記事を見て下さい)を使いヤフーから20分遅れのデータを取り込みます。Photo_9

そのデータ(セル)を1ページ目に参照させます。

ステップ1 は成功しました。(5銘柄だと楽に作れます。)02_1

つづく

 

| | コメント (0) | トラックバック (0)

下手な私

 前場5352,5017のリバウンド狙いで入ろうかと思いましたがそこが今日の高値でそれから下がってしまいました。板を見ていたら、その時は下での買い物の方がが多かったので騰がると思ったのに、結果は反対で多い板の方へ行ってしまいました。

 自分と反対のシステムを作れば儲かるのだろうか。まあ、今は調整が済むまでおとなしくしとけと言うことでしょう。

 私には順張りだからどうしても高く買ってしまう癖があります。

 幸い、6330 東洋エンジ が騰がってくれました。このまま調整が終わり上がってくれれば良いのですが。

        ********

今日の結果  

    平均   PF(万円)

5/16 17498   315.9   +2.4 

6330 東洋エンジ 700  +12  2000株  

5479 日金工   623  ±0  1000株 

 昨日から新しい試みを始めました その名も 

『 PM2:45自動発注計画 』 です。

この計画のメリット

 前場寄り付きの高値掴みを防げる。

 ある程度決着の付いている時間帯である。

 一般個人が発注しにくい時間帯である。

この計画のデメリット

 オーバーナイトのリスク。(トレンドフォローには関係ない。)逆に手仕舞いもこの時間だからリスクを減らすことにもなる。(暴落前に売れる。)

次回 『 PM2:45自動発注計画 』 ステップ1

| | コメント (0) | トラックバック (0)

面白いツールを見つけた

 当ブログはトレンドフォローを前提に書いていますので。完全な自動にする必要はないのですが。PM2:30の時点で判断し(売買サインを出す)、そしてPM2:50に発注するとか,PM2:05の時点で判断し,即発注するとか,出来ればな~(翌寄りつき発注なら誰でも出来ます。)と思っています。

 それでUWSC(Windows 自動化ソフト)と言うフリーソフトがあって試してみたんですよ。

 マクロの記録と同じで、いつもしている作業を再現してくれます。

例えば、UWSCの記録ボタンをクリックします。

そして,いつもの作業をして行きます。

ディスプレー上のアイコン(証券会社)を左クリック、右クリック,開くをクリックして証券会社のページを開きます。

会員のログインのボタンをクリックし、口座番号,パスワードを入力し,実行ボタンをクリックします。

自動更新株化ボードを開きます。

そして、UWSCのストップボタンをクリック。

これで、この一連の作業をした通りに再現してくれるのです。

保存も出来ます。

買い発注の作業(1000株成行と決めていればVBAからUWSCを使えそうです。)

売り発注の作業(全株成行)

取り消しの作業

この3つの作業を記録し各々名前を付けて保存します。

ここまでは試しにやってみました。成功です。パチパチ

非常に面白いです。起動の時間設定も出来るみたいです。スクリプトの編集も出来ます。あとはVBAからこのUWSCを上手くコントロールできるか。リアルな株価の取得です。

(ただし今のテスト段階ではマウスの移動だけですから1銘柄しか出来ません)

一度試してください。私もこれから色々と試してみます。

            *

1銘柄のコントロールであれば今にでも出来そうです。

エクセルのクリエでPM2:20にデータを取得します(4本値)サインを出させます。

UWSCをPM2:30に起動させます。UWSCからエクセルを呼び出しサインの値をUWSCに返します。

そのサインに依って上で保存した売り買いの作業を自動でさせます。(最初はVBAの方からUWSCをコントロールしなければと考えていました。)

非常停止ボタンも必要でしょう。(PM2:00からPM2:30の間に異常事態がおこれば手動で停止しなければなりません。)

これ専用のエクセルシートを作ります。

1銘柄だけですから、225先物、FXには応用できるのではないでしょうか。

自動更新画面が10銘柄ですから。10銘柄に対して出来そうです。しかし、1度に10銘柄が買いのサインを出しても資金的に意味を成しませんネ。

また良い銘柄に絞ろうと先ほど書いたばかりですし。

とにかく、1銘柄だけでも実現するのが先決です。

頑張ってみます。

つづく

| | コメント (0) | トラックバック (0)

2007年5月16日 (水)

決算発表は怖い

5017、5352が逝ってしまいました。不用意に買って無くてよかったです。危ないところでした。(4112が逝ってしまいましたが)

何か去年と同じような展開になってきました。去年も2月にやられ、3月から4月にかけてある程度回復し、調子に乗りかけ、5017の玉を増やしたときに、決算発表で逝ってしまいました。

しかしその6月以降は8ヶ月連続プラスだったんですが。

今はよくても売られ、悪ければさらに売り込まれるという状態です。

今後どの銘柄の回復が早いか。そしてさらに騰がる銘柄はどれなのか。

システムトレードだからと言って、ファンダメンタルを無視するわけにはいきません。

今まで資金管理のシステム(ポジションサイジング、トレーディングストップ)

売買サイン、検証システムを考え、作り、実践してきました。

今のところ戦績は、半々と言ったところです。出だしは絶好調でした。次に、損切りと逃げる事を学びました。(損切りはしたくないですが。それが出来ないとシステムトレードは成り立ちません。)

これで、殆どの基礎の部分(重要部分)は押さえられたと思うのです。

今後はこのシステムにあった銘柄を探し、システムに与えてあげることでしょう。

昨日本屋で立ち読みをしたのですが。その中に銘柄を4ランクに分けて考え、悪いランクの銘柄から切り捨て、よいランクの銘柄だけを残していくと言うものがありました。

どれが良いかは人それぞれで感じ方が違うでしょう。けれどたいせつなことです、この部分でもシステム化が出来ればよいのですが、その本には企業の業績の研究には時間を惜しんではならないと書いてありました。

        ********

今日の結果  

    平均   PF(万円)

5/15 17529   313.5   +3.5 

6330 東洋エンジ 688 +14  2000株  

5479 日金工   623  +7  1000株  

 銘柄選択は間違ってないと思います。

 乗り換えも上手く出来たかな~ でも勝負は下駄を履くまで分かりません。

過度な弱気も、過度な自信もよくないでしょう。いつも不安と期待が交差します。

| | コメント (0) | トラックバック (0)

6330の調整パターン

 不幸にも6330は売りサインが出てしまいました。

それで売買指示シートお見ていて気が付いたのですが、この最近6ヶ月の上昇と調整のパターンがあるのに気づきました。

むかし、よくやっていた自分の方法なんですが、ピークから調整の日にちを数えます。

だいたい5日ぐらいを目安にします。つまり参入に出遅れた場合5日がまんします。そこで押したところを買いではいるのです。(自分は高値つかみになったのですが。)

633008  左の図は6330の6ヶ月、日足です。パラボリックですが、だいたいProgre02も同じようなところでサインを出していますので参考に使ってみました。

5回ほど調整がありました。

5日ぐらいが目安で値幅は50円程度でしょうか。今回は上髭が長かったのでなんとも言えませんが。

650円までで止まるのではないかと思っています。これは損切りの目安ではありません。参入の参考にしてください。そして参入すれば必ずロスカットラインを設定してください。

| | コメント (0) | トラックバック (0)

2007年5月15日 (火)

3%を超える損失

 今日は1日での今年、最高の損失に成りました。兎に角,4112だけは逃げれたのですが。 6330の下げが痛いです。

 タラレバを言いたいところですが、ここは素直に反省します。

良かった点。

4112を今朝1000株だけ残そうと思ったが、全部売ることが出来た。

5202を利益確定した。7246を上手く逃げれた。

悪かった点。

6330が1000株増えてしまった。

6330を売ることが出来なかった。これは私個人の弱点なんですが、買った翌日に売ることができません。その結果大きく損をするか。ホールドするか。ホールドした場合、良い銘柄だと戻ってくるのですが。回復するのに2ヶ月ほど掛ってしまいます。

4112に比べ6330の方が遥かに良いので。これはこれで正解だと思うのです。どうなることやら

        ********

今日の結果  

    平均   PF(万円)

5/15 17512   309.6   -9.9   4連敗

これで連休前に戻ってしまいました。 ガッカリ・・・・

| | コメント (0) | トラックバック (0)

ふらふら

 昨日は6330、5479の決算に神経を集中していたので,4112の事をすっかり忘れていました。4112の決算あまり良くなかったですネ。残念

 売予定値を下回ったので。寄りつき399で成り売り損切り、これは痛いです。

 この様な時はいつも思います。なにもサイン通りに売予定値まで待たずに昨日、裁量で売ってしまえば良かったのにと、しかし,実際にはかなりサイン無視をしています。

 この損切りはキッパリ忘れ、気分を新たにして挑まなければ。

6330、と5479に期待します。

| | コメント (0) | トラックバック (0)

2007年5月14日 (月)

上髭とProgre02

 Progure02の売りサインはn日間の高値よりATR(ボラ)のm倍下がったところで出るようになっています。またトレーディングストップもその日の高値の何%下に置いています。

ですから必然的に上髭が出れば売りサインが出るようになっています。(良く当たります。)

今回 5479 がそれにあたります。思わず買ってしまいましたが。PM8:00にデータを更新して気が付きました。売りサインになっています。(1916の二の舞か)

売りサインの出た銘柄

ミネベア、日金工、太平工業、ピストン、兼松、板硝子(Tストップ)、共栄タンカー(Tストップから通常の売りサインに)

買いサインの出た銘柄はありません

            *

       売り予定値

保土谷   405    東洋エンジ  695

 プレス   505

7246 プレスは私は売ってしまいましたが、なでかまだ売りサインになっていません。売り予定値が下がっています。(この点も今後検討しなければなりません。)

次回 上髭についてもう少し考えたいと思います。

| | コメント (0) | トラックバック (0)

決算発表でじたばた

 株をやっていて精神的に分けが解らなくなる時がある。

6330 の買戻しも間違いでないと思う。

7246 も上手く離せた。

5202 も手堅く利益確定が出来た。

6330 の買い増しも銘柄を絞っていこうと前前から予定していた。

問題は5479の買い、狼狽売りの反対でこれは狼狽買いだ。

天井掴みにならなければ良いのだが・・・・・

        ********

7246 @528 売り  (-6000)

5202 @675 売り  (+32000)

6330 @703 買い 1000株

5479 @644 買い 1000株

今日の結果  

    平均   PF(万円)

5/10 17736   325.9   -1.5   1敗

5/11 17553   322.5   -3.4   2連敗

5/14 17677   319.5   -3.0   3連敗

| | コメント (0) | トラックバック (0)

BBシステム の比較

つづき

それで、Progre02とBBシステムとどれだけ違うかをテーブルを等高線のグラフで見てみます。

Pro5202 Bb5202_1 

BBシステムのピークは矢印のところだけです。Progreはマイナスの領域がありません。

多分ボリンジャーバンドをどのようにいじくってみても使い物にならないように思うのです。

        ********

今日の結果

 シュミレーション取引はバーチャルだから後からどうにでも好きなように書けます。

問題は実際の取引です。システムトレードと言いながら、やっていることは裁量取引です。

限られた資金(300万)の中でやっていますので、サインが出たからと言って全部サインどおりに買うわけには参りません。ある銘柄を売ってよりよい銘柄に乗り換えるとかしないと効率が悪くなってしまいます。

それで金曜日には3銘柄を売らされてしまったのですが、NYが反発したので、振るい落とされたと嫌な思いに成っていました。

また、月曜日はAM11:00から6330東洋エンジの決算発表です。発表を待ってからでも良いのですが、そのような思いがあって寄り付きに買うことを決めました704円で1000株、711円お付け下がってきます。702円で1000株買い増ししました。なでか下がってきます。688円まで下がります。

 横で5479日金工が勢いよく上がっていきます。ちょっと不安と羨望がいつものように交差します。6330は決算予想より悪いのだろうか。

 後場 に入り決算を見、急騰します。741円まで、5479が607円まで急落と思えばここも決算発表で2時過ぎ急に上がりだします。660円を付けます。

この勢いを見て思わず買ってしまいました。644円で1000株その後両銘柄とも下がってしまいます。ひぇ~

それでシュミレーション取引も5202を利益確定、7246損切り、5479日金工644円買い戻し、6330 東洋エンジ703円1000株買い増しとします。5202、7246の売値は後ほど決めて後ほど損益を集計します。

| | コメント (0) | トラックバック (0)

2007年5月13日 (日)

今までが順調すぎたのか

売買指示シートが完成したので、新しいシステムをメジャーな指標を使い作ってみようと思い、ボリンジャーバンドを基に作ってみました。 

それで、Progre02(当ブログの売買指示システム) での成績の悪かった銘柄順に、BBシステムの検証を始めました。

 途中経過では,思った成果は上がりません。たぶん売り買いの条件を変えてもそれほどよい結果にはならないと思います。

 BBはそのバンドの中で動くと言うだけです。買い売りのポイントを上下に動かしてみても結局はその周りで動く時があります。それは上がっても下がってもどちらでも起こります。その時は利益が上がりません。騙しというものに何度もかかります。

 逆に大きく儲けるチャンスを逃している,ことが多いようです。

検証を続ける毎にテンションが下がっていきます。一般的なシステムてこんなものなのか。そして、ちまたではシステムトレードが話題になっているけど、皆まじめに検証をしているのだろうか。

 なかなか良いシステムってそれほど無いだろう。8割のシステムは役に立たないと聞くし。

テクニカルチャートで儲かるのであれば皆億万長者になる。そんなに簡単でないのは分かっているが。検証には時間が掛るし、結果が出ないと報われない。

7銘柄の検証を終えたところで時間の無駄と気がつく。くそおおおおお・・・・・・・・・

まったくひどい結果だ。

BBには手仕舞いに別の指標か,トレーディングストップを使った方が良いみたいです。

今のところProgre02の方が遥かに良い。Progre02は下げの時には手を出さないからか。エクセルのテーブルでみてみると。Progre02の方が圧倒的にプラスの領域が広い。ほとんどがプラスと言って良い。

BBシステムにはほとんどプラスの領域がない。満足のいく所があってもそれは点に過ぎないです。

この場合の満足のいく結果とは最低でも3年で2倍は欲しいです。なでなら、この銘柄に全ての資金をつぎ込むのではないから。2倍であっても実際にはその1/5(資金の1/5)ぐらいになってしまうからです。

1000株単位で60万です。ただし一つの銘柄に固執するのではありません。3年間で色々な銘柄に乗り換えトータルで3倍を目指します。

それでも、内心、Progre02の成績がはるかに良いのでホッとしています。

今までこのBBシステム作成と検証(今までの応用)の記事を書いていたのに全て没にしなければ、この1週間の苦労が水の泡です。

        *********

今週の結果

318.4 ⇒ 322.5   +1.29%

週間目標 2%UP はなかなか難しいです。今週こそ達成かと思いましたが。それでも3週連続プラスです。

月間目標は 6%UP 今のところ +2.32% 後10万、是非とも達成したい。

次回は 5202 を使い Progre02 と BBシステム の比較をしてみます。

つづく

 

| | コメント (0) | トラックバック (0)

2007年5月12日 (土)

売買指示シートの出来あがり

  Vba41_3 これがVBEです。

 Vba42 売買指示シートのトップシートです。データ取得ボタンをクリックすればデータ取得フォームが現れます。行あけボタンで2枚目以降のシートの3行目を入力した数だけ行が挿入され,必要な式が挿入された行にコピーされます。(30秒ぐらい)その作業が終わったのを確認し、フォームのデータ取得ボタンをクリックして下さい。(1分ぐらいで15銘柄のデータが取得されます。2つのブックで3分ぐらいです。)

Vba43 トップシートに戻り、左側のボタンをクリックして行けば,結果が出ます。

データ取得に余り時間が掛らないのでゆっくりと検討することができます。

シュミレーションの4銘柄は昨日の下げにもしぶとく耐えHOLDとなっています。私は4112を残し離してしまいました。振り落とされたようです。また機会があれば買い戻す予定です。

Vba44 共栄タンカー、三菱マテリアルはストップ率を小さくしていたためストップに掛りました。一応は適切な処置であったと思います。

それで一つ間違いに気付きました。共栄タンカーの買い予定値がこの前作った条件式では両シグナルのどちらかVba45の値になると思います。ストップで売りですから。買い予定値はそのトレーディングストップの値になります。(しかし買戻しは難しいですね。)下に訂正後の式を書いておきます。{セルT3}に入れて下さい。

=IF(OR($AA3=0,$AA3=2,$AA3=4),IF(AND($N3="",$P3=""),$O3,IF(AND($N3="*",$P3="*"),$M3,IF($Z3="ストップ",$Y3,IF($M3>$O3,$O3,$M3)))),"")

これでこのシリーズは終わりです。是非とも実行してみてください。

| | コメント (0) | トラックバック (0)

2007年5月11日 (金)

VBAの入り口 その10

 つづき

ここまで来ると後一歩、前に書いたVBAでデータ取得より遥かに簡単です。

この部分もマクロの記録を使えます。実際にクエリを使いデータを取得すればよいのです。この部分はVBAでデータ取得を見てください。

今回はコードソースとその説明だけ書きます。

        ********

Sub ヤフーデータ取り込み(hiData As Variant)
'
' ヤフーデータ取り込み Macro
' マクロ記録日 : 2007/5/6  ユーザー名 : ペニー
'

' 基本URLの収得

    Dim sCode As Integer
    Dim strURL As Variant
      
  Application.ScreenUpdating = False
 
  If Worksheets(2).Range("A3") <> "" Then
         MsgBox "行をあけてください", vbOKOnly + vbExclamation _
            , "行があいていません"
         Exit Sub
                
  End If
 
  shCount = ThisWorkbook.Worksheets.Count
      
   For inCo = 2 To shCount
   
       
    lngPageNum = 0

    sCode = Worksheets(inCo).Range("A1")
       
               
    strURL = "http://table.yahoo.co.jp/t" _
        & "?s=" & sCode _
        & ".t" _
        & "&g=" & "d"
               
'データインポートとはりつけ

        For j = 1 To 1
      
                
          With Worksheets(inCo).QueryTables.Add( _
                  Connection:="URL;" & strURL & "&y=" & lngPageNum _
                , Destination:=Worksheets(inCo).Range("A2"))
         
           .RefreshStyle = xlOverwriteCells
           .AdjustColumnWidth = True
           .WebSelectionType = xlSpecifiedTables
           .WebFormatting = xlWebFormattingNone
           .WebTables = 23                           'lngTablePosition '時系列データの位置(テーブル番号)
           .Refresh BackgroundQuery:=True
           End With 

 
            Next j
          
      
    Next inCo
   
    Application.ScreenUpdating = True
            
End Sub

        ********

 すごくシンプルです。

sCode = Worksheets(inCo).Range("A1")  sCode は 銘柄のコード です。 各シートのセルA1には必ず銘柄コードを入れておいてください。(チェック機能を置くべきですが、置いていません。)

strURL = "http://table.yahoo.co.jp/t" _
        & "?s=" & sCode _
        & ".t" _
        & "&g=" & "d"

これはURLの編集です。シートごとに sCode が 変わって行きます。日足の1ページだけですから簡単です。

            *
 
WebTables = 23

これはヤフー時系列データの位置(テーブル番号) 時々変わります。今年の3月1日から変わりました。その時は今までデータを取得できていたのに突然出来なくなり皆があわてたようです。

            *

クエリの部分は私には分かりませんから、皆さんで調べてください。(実際に取得できればそれでよいので分からなくてよいと思いますが。)

以上でこのシリーズは終わりです。最初の入り口が一番難しかったように思います。だいたい同じような作業が続きますから、慣れてくればだんだんと簡単になっていきます。

その10なんて呆気ないもんでしょう。もっと難しいと思ったのではないでしょうか。

何回もテストして見てください。今後これらの事を応用していろんなことが出来ると思います。自分に合ったシステム、自分に合った投資ツールを開発してください。それはちょっとした工夫で、ちょっとした閃きで出来ることでしょう。

今次のシステムに挑戦中です良い結果が出れば発表します。今日の結果は日曜に今週の結果とまとめて書きます。

| | コメント (0) | トラックバック (0)

ストップに引っかかった

 NYが下がり、朝から弱い。5202が668円のストップにかかってしまう。たまらなくなって664円で離してしまった。(2万の利益)それから安値661円をつけた後673円まで戻す。ついでに7246も531円で売ってしまう。(3千の損失)6330も697円で利食い。(4万の利益)

 完全に売買指示を無視している。それなら昨日に売っていればいいものをなで今日売るのか。

 もっと粘らねばならないのか。ここは一旦売っておいて(ポジション調整)再参入の機会をうかがう事にします。

 今の時点ではシュミレーション取引はそのままHOLDとします。売り予定値を下回ればルールに従い手仕舞いマス。

| | コメント (0) | トラックバック (0)

2007年5月10日 (木)

共栄タンカーとストップ

 9130 共栄タンカー この株は持ち株ではないがもしサイン通りに買っていれば、今日6%のトレーリングストップ(382円)に掛りストップの売り(4)になりました。利益は指示通りだと4000株で28万になります。

 5711、5202、6330も絶えずストップ値を意識しておいた方が良さそうです。3銘柄とも新高値を更新しているのでその分ストップ値は上がります。各自計算しておいてください。

 1916 も 5352 も 騰がった、結果的に1916は底で売ってしまったことに成る。(毎度のことだが損した銘柄の買戻しは精神的にキツイ。これが克服できればまた一つステージが上がるだろうに,システムはそんな事お構い無しだ。)

 売買指示は両方ともすでに買いサインになっていました。買い戻したいところです。

 いつも後講釈になってしまって申し訳ない。どうしてもサインより遅れてしまう。実際ああしておけば良かったのにと言う後悔ばかりです。

今HOLD中の2銘柄4112、7246も元気良く上がってくれればそんな後悔もしなくてすむのに。

 とにかく今週はプラスで終わりそうだ。辛抱強く待つしかない。こう言う時は必ず自分の番がやってくるから。

 いよいよ 

次回は  VBAの入り口の最終回です。金曜日なので売買指示ブックの完成をこの休みにして下さい。

 またこれを使い色々と応用が利きますので。必ず自分の物にして下さい。その次は応用偏を考えております。

| | コメント (0) | トラックバック (0)

システムトレードの優位性について考える

 トレンドフォローとデートレでは根本的に違うので今回は、トレンドフォローにおける、裁量取引との比較をしてみたい。

 心理的に有利かと言えば、トレンドに乗っている時は,同じでどちらも心理的に安定しています。どこで利益確定しようか迷いますが。

 負けている時は、人それぞれの心理的許容範囲の問題だと思います。負けに耐えられねばポジションサイズを小さくするだけで。裁量取引の上手な人はそのコントロールも上手なんでしょうね。

 速度の点は、完全自動にした場合圧倒的にコンピュータの方が早いです。コンピュータには躊躇と言うものが有りませんから。

 勝率は反って裁量取引の方が良いかも分かりません。どちらも長くしていると50%前後に収斂するのではないでしょうか。

 それではどこにシステムの優位性があるのでしょうか。

トレンドフォローのシステムですから、まず人よりも早くそのトレンドを掴まないといけません。次に幸運にもそのトレンドに乗れたとして振り落とされずにどこまで付いていけるか、今までの経験上これが一番難しいです。(過去にアーバン、最近では冶金など)私はどちらかと言うとチキンです。怖くなってすぐに離してしまいます。

 だからシステムの助けがないと(裁量だと)、損も少ないかわりに利益も少ないと言う状態に陥るのです。

  元々損切りが楽に出来る性格だから。後はどのようにして利を伸ばすかなんです。

 勝率が裁量と比べ変わらないのであれば。後は平均損失よりも平均利益を上げればよいのです。損益レシオを2以上にする、そのようなシステムを作る。システムの優位性はこのことに尽きるのです。

 裁量取引であってもそれは同じです。この1年の取引が実際に何勝何敗で、損益レシオはいくらか、プロフィットファクターはいくらか、すぐに計算できると思います。客観的に見て今の自分の取引が損小利大の取引になっているのか。それから始めましょう。

 それでよい結果が出れば自信を持ちましょう。そしてそれをシステムにしてしまえば良いのです。システムにする方法は当ブログで書いてきました。参考にしてください。

 期待値の低い取引であればやればやるほど損失が出ます。そのときには取引方法を変えましょう。

          ********

今日の結果  

    平均   PF(万円)

5/10 17736   325.9   -1.5   1敗

今日はまったく元気が無かった。いまのPFは保土ヶ谷、次第である。

| | コメント (0) | トラックバック (0)

あれも買いたい,これも買いたい

 わたしの売買指示サインはパラメータを変えることによりいくらでも変わってしまいます。一応上手くいっているようでいて。ナニか違和感があります。

 どのようなテクニカル指標も完璧なものはありませんが。それらは誰が使っても基本的な数値は変わらないですよね。例えば、一目均衡表は誰が書いても同じで、人によってどこが違うかと言えばそれを見て売買タイミングを何処にするかだけですよね。

 いまのわたしの売買指示サインはその逆で、売買タイミングはコンピュータの指示で人が決めることは出来ない。パラメータを変えることによりテクニカル指標が変わってしまいます。

誰が作っても同じサインが出る様なものにしたいんですよ。あまりにも自由度が有り過ぎますから。

それが売買指示サインをグラフ化して思うことなんです。

今日は 5711三菱マテリアル をグラフ化してみました。三角持合の時に振り落とされてしまったのですが。買戻しが出来なかったのは残念です。この失敗は何度しても直りません。

解ってはいたのですが。資金的にも余裕がないのと6330、5202がその分をカバーしてくれていますから。まあ良いか,と言うのが買い戻しの出来ない原因です。積極的に行くとすれば,4112を売って乗り換えでしょうね。

 しかしタイミング的に遅いので。4112、7246がさらに騰がってくれるのを今は待ちます。またチャンスはあると思います。

 5706も騰がりました。やっと底を付けたみたいです。あそこで売らないで良かったです。

 あれも買いたい、これも買いたい(あれも買ってれば良かった、これも買ってれば良かった)という状態です。

 プロのやり方で。同時に沢山の銘柄を買い。その中で悪いものから売っていき。良い銘柄だけを残していくという投資法があるそうです。そして積極的に良い銘柄に乗り換えていきます。勝っている時ってそれが出来ている時だと思います。今年の2月までの8ヶ月はそれが出来ていましたから。

 ナニも怖がることはないです。暴落があればその時にはその時の対応をすれば良いだけですから。

 積極的に行きましょう。

| | コメント (0) | トラックバック (0)

2007年5月 9日 (水)

VBAの入り口 その9

つづき

これも前の作業と同じです。

ソースコードとその説明だけ書きます。

Sub 式のコピー

        ********

Sub 式のコピー(hiData As Variant)
'
' 式のコピー Macro
' マクロ記録日 : 2007/5/5  ユーザー名 : ペニー
'
Application.ScreenUpdating = False
 
  shCount = ThisWorkbook.Worksheets.Count 
   
   For inCo = 2 To shCount
   
        ThisWorkbook.Worksheets(inCo).Select
        Worksheets(inCo).Range(Cells(3 + hiData, 8), Cells(3 + hiData, 37)).Copy _
        Destination:=Worksheets(inCo).Range(Cells(3, 8), Cells(2 + hiData, 37))      
               
   Next inCo      
    
Application.ScreenUpdating = True

End Sub

        ********

これもマクロの記録の機能を使っています。

Range(Cells(3 + hiData, 8), Cells(3 + hiData, 37)).Copy

たとえば2行空けたとします。hiData=2、ですから、セル(5,8)からセル(5,37)の範囲の式をコピーします。の37と言う数字は今後項目が増えれば変える必要があります。

            *

Destination:=    Range(Cells(3, 8), Cells(2 + hiData, 37))

それを空けたセル(3,8)からセル(4,37)の範囲にペーストします。

つづく

| | コメント (0) | トラックバック (0)

後場急に騰がり出した

 その中で 5202 今日は下がっている。昨日664円をストップ値に設定したばかりだ。おまけに『決めたルールは守る』と宣言してしまった。

 もしもこれを下回れば、手仕舞いするしかない。(終値で)

上がることを祈ります。

           *

 最近、225先物デートレのサイトが気になって仕方ない。

225先物も現物株も動き(ボラティリティー)は同じはずだ。

違いは、ポジションサイズでしょうか。

詳しくないので良く分からないのですが。間違った事を書いていれば許してください。

資金の20倍のレバレッジを掛けることが出来るんですよね。

そして小額の資金で、大きく儲けようとしている人が多いみたいですね。例えば30万の資金で一ヶ月で15万儲けると宣言しているサイトもありました。本当に可能なのでしょうか。(この場合225ミニですが)

 幼稚な僕の今までの経験から言って300万の資金で現物取引した場合一ヶ月で15万儲ける事は可能で、コンスタンスにそれを続けることも不可能ではないと思っています。

 と言うことは30万の資金で10倍のレバレッジを掛けて1枚から2枚取引すれば可能だと考えられます。

ここまでは利益目標です。夢があります。次にリスクについて考えます。

          *

リスクを利益の半分としますと。7.5万です。30万の資金の場合、2ヶ月連続負けで破産します。

300万の資金の場合でもポジションサイズのことを考えると255ミニで多くて3枚まででしょうね。利益目標は月30万で、許容リスク月15万となります。

結論

先物をするにはもっと資金をためてから。破産はしたくないので。

 しかしシステムトレードは暇だ 

          ********

今日の結果  

    平均   PF(万円)

5/9 17748   327.4   +1.2   7連勝

 後場急に騰がり出した。特に5711,5706、5479羨ましい。

 

| | コメント (0) | トラックバック (0)

VBAの入り口 その8

つづき

Sub 行の挿入 の記述

 これは日ごろ新しいデータを入れるために一行挿入する作業です。一枚のシートの作業であれば、マクロの記録機能を使う事が出来ます。(どのような記述になるか一度その機能を使ってみて、それからそれを改造するのも良いかもしれません。)

 今回は複数のシートにまたがった作業になりますので、マクロを登録した後、下のコードをコピー/ペーストしてください。

            *

 エクセルのツール(T)、マクロ(M),●新しいマクロの記録(R)をクリックします。

マクロの記録 ダイアログボックスが出ます。

マクロ名(M)を  行の挿入 と OK 。

■記録終了をクリック。

VBEのプロパティー・ウインドーの(オブジェクト名)を 行の挿入01 と書き換えます。

 Sub名 と オブジェクト名 が同じであればエラーが出るみたいなんですよ。(エラーの原因を掴むまで半日掛ってしまいました。)

        ********

Sub 行の挿入(hiData As Variant)
'
' 行の挿入 Macro
' マクロ記録日 : 2007/5/5  ユーザー名 : ペニー
'
Dim inCo As Integer

  Application.ScreenUpdating = False
 
  shCount = ThisWorkbook.Worksheets.Count
  inCo = 2
   
    f1 = hiData
 
    For inCo = 2 To shCount
         
       
        Do Until hiData = 0
            Worksheets(inCo).Select
            Worksheets(inCo).Rows("3:3").Insert Shift:=xlDown
       
            hiData = hiData - 1
            
        Loop
       
        hiData = f1
       
      
    Next inCo
       
          
   Application.ScreenUpdating = True

End Sub

        ********

 プログラムの説明

shCount = ThisWorkbook.Worksheets.Count 

shCount は 自分が作った変数(小文字で始める) このブックのシート数に使う

ThisWorkbook.Worksheets.Count は このブックのシート数を数えてくれるプロパティー

             *

inCo は 自分が作った変数  シート番号に使う、 初期値は2

f1 に 一旦 何行(hiData)あけるか を入れておきます。

             *

For inCo = 2 To shCount

       :

Next inCo

inCo は For から Next の合いだの処理を するたびに 2から1ずつ増え shCount(シート数) になるまで繰り返します。

             *

Do Until hiData = 0

             :                     
Loop
は hiData が =0 になるまで Do Until と Loop の合いだの処理を繰り返します。

             *

Worksheets(inCo).Select
  Worksheets(inCo).Rows("3:3").Insert Shift:=xlDown

これはマクロの記録で記述しました

xlDown 1行下に下げると言う命令

シートナンバーの変数 (inCo) は 先ほど書いたように2から1ずつ shCount(シート数)まで増えていきます。

             * 

hiData = f1 1シートの作業がおわれば hiData は 0 となりますので hiData を元の数に戻し次のシートの作業をします。

つづく

| | コメント (0) | トラックバック (0)

2007年5月 8日 (火)

今後どのような投資行動をとるか

 6330 東洋エンジ は一時700円を越えました。

いったん利益確定しても良いのですが。(裁量の場合)

あくまでもトレンドフォローのシステムトレードとしての行動を採りたいと思います。(トレンドフォローで儲かるのか、を試さなければこのブログの意味がありません。)

それで 6330 は今までストップ幅を高値の9%に採り、じっと耐えてきました。(始めは広めのロスカットを用いると言う,教科書青本魔術師たちの心理学 ― トレードで生計を立てる秘訣と心構え 通りの行動です。)

一応、2-R利益(1-R2.5万円)に達しましたのでストップ幅を縮めようと思います。このストップ幅(ストップ率)は人それぞれの好みで決めれば良いと思います。

 狭い幅(ストップ率2.5%)にしてしまえば再参入を考えておかねばなりません。もうこの位儲ければ僕は満足だと言うのであれば、もっと狭いストップでも構いません。実際今年の2月末の暴落の時は、この狭いトレーリングストップで助かりました。(2月末の記事を見てください。)

 それで,私ははじめ4%にしようとおもったんですよ、ところがPM8:00にデータを更新しグラフで何か良い値がないか探しました。まだ売りたくないという気持ちの方が強いのでそれほど幅を縮めたくないし、今回はストップ率を6.2%にします。 それで,661円が売り予定値となります。(掛りそうで掛らないところが分かれば良いのですが)

しかし、 これを決める事により今後の行動がはっきりとしてきます。心理的に優位に立てます。(しかしまだ迷いもあります。このままもう一段上がれば気分的に楽なのですが。)

            *

逆に今日引け成りで利益確定した場合を考えてみます。

明日下がればそこではなかなか買い戻す事は出来ません。そこから上がってきて694円を越え700円に乗ってくれば、あそこで売らなければと考え出します。705円を越えてくれば。もう買い戻すしかありません。そしてそのまま上がりつづければ問題はないのですが、ここでもたもたされると、心理的な優位性がこの時点で無くなってしまいます。

最悪はそこが高ねと成り、下がってしまう事です。その時は利益確定で儲けた利益を吐き出す事に成ります。次の損切りポイントが分からなくなってしまうからです。また一応利益もあるしと考えなかなか売ることが出来ないからです。再参入の難しいところです。

ここはトレーリングストップを決めトレンドに着いて行くしかありません。

        ********

今日の結果  

    平均   PF(万円)

5/8 17656   326.2   +3.8   6連勝

6330 東洋エンジのストップ率は6.2%と決めます。売り予定値は661円となります。

5202 板硝子のストップ率は3.4%と決めます。売り予定値は664円となります。Photo_8 Tesuto_334

騰がれば迷いも生じます。

その迷いを断ち切るためにも、ここで誓いを立てます。

一度自分で決めたルールは守るぞ!

| | コメント (0) | トラックバック (0)

園児君が元気です

 5月8日 

 利食い売りに押され,上値が重い中、HOLD中の4銘柄は順調よく騰がっています。昨日はほとんどの株が上がりましたがここからは業績、材料、信用取り組み、人気などを良く吟味し、上がっていく銘柄を絞っていかねばなりません。

 また、利食い売りしたい衝動に駆られますが,(30分ごとに売りたくなる)ここはじっと我慢です。(トレンドフォローの場合。)

 1983 は 神様が逃げ場を与えてくれたのか・・・・・

 6330 は 700円の壁も薄そうです。

 4112 は 巷で有機EL が話材になっているようです。たとえ下がったとしても下は限られると思います。 まだ買値より下がっていますが今後に期待しています。

 

| | コメント (0) | トラックバック (0)

VBAの入り口 その7

 つづき

 VBEを開きます。

 プロジェクト・ウィンドーのフォームのデータ取得を選択、オブジェクトの表示をクリックしてください。

 フォーム上の各パーツをクリックしプロジェクト・ウィンドーのコード表示をクリックしてソースコードを記述していきます。

 まず テキストボックス

        ********

Private Sub TextBox1_Change()

hiData = 1
       
    If IsNumeric(TextBox1.Value) = False Then

   If TextBox1.Value <> "" Then

        MsgBox "数字を入力してください", vbOKOnly + vbExclamation _
            , "入力エラー"
        TextBox1.Value = hiData

  Else
      End If

   Else
        hiData = TextBox1.Value
    End If
   
End Sub

        ********

Private Sub TextBox1_Change() の Change() は テキストボックスが変われば以下を実行するイベントです。

hiData は 自分が考えた 変数名 何行あけて、何日分のデータを取るか、初期値は1

If 文は IsNumeric はテキストボックスに入力した文字が数じかどうか判定するもの、違っていれば(False)、メッセージボックス(MsgBox)が出て、エラーを示します。テキストボックスは1になります。

 その中のIf文はテキストボックスを空にした場合も、上のエラーメッセージが出ますのでそれを回避するため。(なかなかこの部分が出来なかった。)今回やっと出来た。それまでは今から作るスピンボタンで無理やり対応していました。

正しく数字を入れれば、その数字が hiData の値になります。

             *

スピンボタン {SpinDown()} コードウインドーの右上のSpinDownを選択

        ********

Private Sub SpinButton1_SpinDown()

TextBox1.Value = TextBox1.Value - 1
   
    If TextBox1.Value < 1 Then
            TextBox1.Value = 1
        Else
            hiData = TextBox1.Value
       
    End If

End Sub

        ********

テキストボックスの値を一づつ下げます。

             *

スピンボタン {SpinUp()}コードウインドーの右上のSpinUpを選択

        ********

Private Sub SpinButton1_SpinUp()

TextBox1.Value = TextBox1.Value + 1
    hiData = TextBox1.Value
   
End Sub

        ********

テキストボックスの値を一づつ上げます。

            *

行あけボタン

        ********

Private Sub 行あけ_Click()

If TextBox1 = "" Then
        MsgBox "数字を入力してください", vbOKOnly + vbExclamation _
            , "入力エラー"
       
    Else
            
            行の挿入 (hiData)
            式のコピー (hiData)
   
    End If

End Sub

            ********

行あけボタンをクリックし正しく数字が入力されていれば、(Sub行の挿入)、(Sub式のコピー)へhiDataの値を持って行きます。

 まだこの2つのSubプログラムは作っておりません。その8、その9で書く予定です。

              *

データ取得ボタン

        ********

Private Sub データ取得_Click()

ヤフーデータ取り込み (hiData)

End Sub

        ********

データ取得ボタンをクリックすればhiDataの値を持って、(Subヤフーデータ取り込み)へ行きます。

            *

重要

この1番上に「Option Explicit」ステートメントで変数を宣言「Dim」しておきます。

        ********

Option Explicit

    Dim shCount As Worksheet
    Dim objSheet As Worksheet
    Dim ingCount As Integer
    Dim hiData As Integer
    Dim f1 As Integer
    Dim inCo As Integer

        ********

ヤフーデータ取り込みのSubプログラムはその10で書く予定です。

今テストをすれば途中で止まると思います。その場合リセットボタン■をクリックしてください。

つづく

| | コメント (0) | トラックバック (0)

2007年5月 7日 (月)

売買サインが変わってきた

 4月25日ぐらいには監視銘柄のほとんどがNOポジ(0)サインだったのが、5月7日には19銘柄がHOLD(1),買い(3)になった。また1983のリバウンド(S高)にはビックリさせられた。

 シュミレーション取引も連敗が止まりようやく明るさが見えてきたようである。

 連敗中は気お紛らわすためもあり、日々の結果発表をサボり、売買指示シートの完成と,その作り方(VBAの使い方)の記事を書くことに励んできました。

 その記事も書き終わり(一部まだ公開をしていません。)今日などは少し暇を持て余しています。それだけ順調な日であったと言えます。

      最近の結果

    平均   PF(万円)

4/18 17667 319.1 +1.9

4/19 17371 316.6 -2.5

4/20 17452 313.9 -2.7

4/23 17455 309.7 -4.2

4/24 17451 314.4 +4.7

4/25 17236 308.6 -5.8

4/26 17429 311.9 +3.3

4/27 17400 315.2 +3.3

5/1  17274 317.4 +2.2

5/2  17394 318.4 +1.0

5/7  17669 322.4 +4.0

 4/25 の近辺が1番苦しかった。それからの5連勝は気分的には良い。ひとまずは330万に乗せたいところであります。

| | コメント (0) | トラックバック (0)

GW明け 順調で

 1983 東芝プラント 凄い利バウンドですネ。下手な僕のコメントでは役にたちませんから、今後の動きがどの様になるか,静かに見守りたいと思います。

 今の持ち株は4銘柄とも順調です。いつも感じている事ですが。

 トレンドフォローの場合、買値からロスカットの範囲内ではプラスであれ,マイナスであれ手仕舞いは出来ませんよネ。それでこの範囲を抜け出すのに3週間ほどかかる事もあります。その間神経をすり減らしてしまいます。(今まで散々ぼやいて来たのですが)

 その間の心理的な、実戦的な対処の仕方ってあるのでしょうか。(デートレだとその様な問題もないのでしょうが。)

 そこで心理的に消耗してしまうと本格的な上昇の初動で売ってしまう事にもなるでしょうし。

 このまま騰がってもらいたいですね。

| | コメント (0) | トラックバック (0)

VBAの入り口 その6

つづき

データ取得フォームの呼び出しボタンをエクセル上に作ってください。作り方はVBAの入り口を参照してください。

(オブジェクト名) データ取得ボタン

ソースコード

        *******

Sub データ取得ボタン_Click()

    データ取得.Show vbModeless

End Sub

        *******

Showメソッド はユーザフォーム(先日作ったデータ取得フォーム)を表示します。

vbModeless はフォームを開いた状態で他のエクセルの作業が出来ます。この記述がないとフォームをとじるまで他のエクセルの作業が出来ません。

       *

次にVBEのデータ取得フォームを選択、オブジェクトの表示ボタンをクリック、

フォームの閉じるボタンをクリック、コードの表示ボタンをクリック、

下のコードを記述(コピー/ペースト)して下さい。

        ********

Private Sub 閉じる_Click()

    Unload Me        

End Sub

        ********

エクセルに戻り、ボタンの名前をデータ取得 に変えてください。

そのボタンを右クリックし、マクロ登録(N)、データ取得 Clickを選択しOKをクリックしてください。

 テストします。

フォームを出したり消したり出来るはずです。

つづく

| | コメント (0) | トラックバック (0)

2007年5月 6日 (日)

VBAの入り口 その5

 3/13に書いたVBAを使ったデータ取得を参照しながら作っていこうと思います。

 Vba31 図のようにテキストボックス、スピンボタン、コマンドボタンを配置します。

 プロパティー・ウィンドー(オブジェクト名)はデータ取得

 BackColor BorderColor を自分の好みで変えてください。Vba32_1

 Caption を データ取得フォーム

 ツールボックスのラベルでテキストボックスの上に『何日分のデータを取得しますか?』と書いてください。

テキストボックスの横に『日分』と書いてください。

フォーム上の各パーツをクリックしますとプロパティー・ウインドーが変わりますので,それぞれ(オブジェクト名)、BackColor BorderColor Caption を図のように変えてください。

この部分は3/13の記事と重複しますのでそちらを見てください。

つづく

| | コメント (0) | トラックバック (0)

データ取得に入る前に

 昨日は町の氏神さんで子供餅つき大会、すがすがしい五月晴れの下、ひさしぶりに餅つきをしてきました。5/4から準備をし雨が降らないか心配していたのですが、晴れて良かったです。多くの参加をいただきました。

 その5に入る前に今からどのような事をしていくか一欄にしないと、自分も何から進めれば良いのか分からなくなるし、それ以上に皆さんは今何をしているのか分からなくなってしまうでしょうね。

今後の予定

        ********

 1. フォームの作成

 2. エクセル上にフォーム呼び出しのボタンを作る。

 そのマクロを作る。閉じるボタンのマクロ記述。

 3. フォームの各ツールのマクロ記述。

 4.行の挿入Sub の記述。

 5. 式のコピーSub の記述。

 6 ヤフーデータ取り込みSub の記述。

                       おわり

        ********

これで今後の記事が書きやすくなりました。

つづく

| | コメント (0) | トラックバック (0)

2007年5月 5日 (土)

VBAの入り口 その4

つづき

 前回は長く書きすぎました。このプログラム6個は同じパタンですからその2だけでも良かったのですが。

 Vba22それで何処がおかしいかと言いますと。NOポジの表示が一列空いてしまうのですよ。それで何回プログラムを見ても間違ってないのに、初めて作った時には各ボタンを一個ずつ順番に作っていましたから、よけいに何処がおかしいのか分かりませんでした。それで他の項目のボタンを作ってみてやっとNOポジの表示だけがおかしいと気付いたのです。

 他と違うのは売買サインだけです。

このままだと1枚目のシートからIfで条件を調べますから,1枚目のシートのセルAA3には何も入っていません、セルG1にも何も入っていません、それで{セルAA3}=0と判断し、{セルG1}=””を表示したのですつまり空を表示していたのです。

 それで応急処置として1枚目のシートの{セルAA3}に5をいれてみました。これで直るはずです。(ショボイですよね。)

 今から修正します。 と宣言したものの、上手く行かない。

たとえば

If  objSheet <> Worksheets(1)  Then

       :

       :

End If

として、1枚目のシートをパスしようとしましたが上手く行きません。残念

次はf1と言うフラッグを作り0から1ずつ増やしf1が1になるまでパスするようにしてみます。

一応、出来ました。

        ********

Sub NOぽじ_Click()

    Dim objSheet As Worksheet
    Dim ingCount As Integer
    Dim f1 As Integer
   
    ingCount = 0
    f1 = 0
   
    Application.ScreenUpdating = False
   
    For Each objSheet In ThisWorkbook.Worksheets
   
        If f1 <> 0 Then
       
            If objSheet.Range("AA3") = 0 Then
       
                 Worksheets(1).Range("C11").Offset(0, ingCount) = objSheet.Range("G1")
                 Worksheets(1).Range("C12").Offset(0, ingCount).Value = objSheet.Range("E3").Value
                 Worksheets(1).Range("C13").Offset(0, ingCount).Value = objSheet.Range("T3").Value
            
            
                 ingCount = ingCount + 1
            
            
            End If
       
         End If
         
           f1 = f1 + 1            
       
    Next
   
            Worksheets(1).Range("C12").Offset(0, ingCount) = "以上なし"
       
    Application.ScreenUpdating = True
 
  End Sub

        ********

赤色の部分が今回追加したところです。

次回は いよいよデータ取得です。

  前回のデータ取得は検証用に1銘柄1000日分の取得でした。

  今回は売買指示シート用でシート(銘柄)毎にデータを取得します

         好御期待

| | コメント (2) | トラックバック (0)

2007年5月 4日 (金)

勝率について考える

 日経225先物システムトレード(デートレ)をしている方からトラックバックをいただいた。トラックバックはだいたいくだらない内容(エロ系、営業系など)が多く相手にしないのですが、中には良いものもあります。今回の場合、システムのルールを守る規律の面で参考になる事があります。

 トレンドフォロー、とデートレでは基本的に勝率は違ってくるでしょう。

 どちらも買いオンリーで最低勝率を考えてみます。

 トレンドフォローの場合、上昇トレンドがないと勝てません。単純に考えて持ち合い、下降トレンド、上昇トレンドの3つですから、1/3、勝率3割3分3厘となります。

 前の検証結果でも、パラメータを固定した後勝率は32%から50%の範囲になってしまいました。当然の結果でしょう。

 デートレの場合その日のノイズで儲けると言う考えですからその時のトレンドに関係なく勝率は50%になると思います。早い話がコインを投げて買うか、見送るか、を決めても勝率は5割になると思うのですよ。

 それで、1番気に留めなければならない事は連敗している時の気の持ち方、ドローダウンの大きさ,ですよね。例えば10連敗した,その時のドローダウンが50万とします。有りうる事です。500万の資金だと耐えられますよね。でも100万だと苦しいです。(不運にもシステムトレードを始めて10連敗したら)

 これは資金量に対するポジションサイズの問題でしょう。

 勝率33%でも50%でもトータルで勝たねばなりません。

 勝率はそのままにしておき、損切りルールを決め損失を出来るだけ少なくし、利益を大きく伸ばそうとするのか。

 それとも今後の動きを予測し、勝率を上げようとするのか,この場合、裏目に出てかえって勝率が下がる事もあります。

 売りも買いもする。一つの市場に絞っている。デートレなどの違いがあってもストップで資金を守ると言う考え方は変わらないようですね。

 2月末の暴落の時のデートレは比較的強いなーと感じました。

 一年間トータルで利益を上げておられるのには感心しております。

これからも色々と検討してみよう。色々なサイトの良いところを採り入れよう。

最近VBAの活用の記事ばかり書いていたのでチョットした息抜きに書いてみました。

 

| | コメント (0) | トラックバック (0)

VBAの入り口 その3

つづき

先に日付のソースコードを変えてみます。ツール(T)からVBEを開きます。

左上のプロジェクト・ウィンドーの標準モジュールの日付を選択し、左上コードの表示ボタンをクリックして下さい。

先日、記述したプログラムがコード・ウィンドーに現れます。

        ********

Sub 日付_Click()

Application.ScreenUpdating = False

    Set a = Worksheets(1)
    Set b = Worksheets(2)

        a.Range("A7").Value = b.Range("A3").Value   
   
Application.ScreenUpdating = True

End Sub

        ********

Sub 日付_Click() のClick() はClickイベントで先に登録したボタンをクリックするとこのプログラムが実行されるというものです。

          *

VBAに慣れている方は、どんどん先に進んでください。昨日の記事のみどりの部分を変えるだけですよね。

それと一つ注意するのを忘れていました。2枚目以降の売買指示シートの{セルG1}には必ず銘柄銘を入れてください。そうしないとボタンをいくらクリックしても結果が返ってきません。

またテストするには銘柄(シート数)を増やして下さい。{セルAA3}には0から4までの値を適当に入れておけば良いと思います。

ただ1箇所だけこれはおかしいと言うところがあります。

今から書くソースコードは敢えて修正前のものを書きます。(自分は今も修正しないでショボイ方法で処理しています。)

何処がおかしいか,修正方法はなにか、考えてください。また、よろしければコメントをください。

2.NOポジ(0)のサインの出ている銘柄の抽出

        ********

Sub NOぽじ_Click()

    Dim objSheet As Worksheet
    Dim ingCount As Integer
   
   
    ingCount = 0
   
    Application.ScreenUpdating = False
   
    For Each objSheet In ThisWorkbook.Worksheets
       
        If objSheet.Range("AA3") = 0 Then
       
            Worksheets(1).Range("C11").Offset(0, ingCount) = objSheet.Range("G1")
            Worksheets(1).Range("C12").Offset(0, ingCount).Value = objSheet.Range("E3").Value
            Worksheets(1).Range("C13").Offset(0, ingCount).Value = objSheet.Range("T3").Value
            
            
            ingCount = ingCount + 1
            
            
        End If
       
    Next
   
            Worksheets(1).Range("C12").Offset(0, ingCount) = "以上なし"
       
    Application.ScreenUpdating = True   
      

End Sub

        ********

3.買い(3)のサインの出ている銘柄の抽出

        ********

Sub 買い_Click()

    Dim objSheet As Worksheet
    Dim ingCount As Integer
   
       
        ingCount = 0
   
    Application.ScreenUpdating = False
      
       
    For Each objSheet In ThisWorkbook.Worksheets
   
        If objSheet.Range("AA3") = 3 Then
       
            Worksheets(1).Range("C16").Offset(0, ingCount) = objSheet.Range("G1")
            Worksheets(1).Range("C17").Offset(0, ingCount).Value = objSheet.Range("E3").Value
            Worksheets(1).Range("C18").Offset(0, ingCount).Value = objSheet.Range("R3").Value
                        
                                       
                  
        ingCount = ingCount + 1
       
       
        End If
    Next
   
            Worksheets(1).Range("C17").Offset(0, ingCount) = "以上なし"

   
   Application.ScreenUpdating = True
       

End Sub

        ********

4.売り(2)のサインの出ている銘柄の抽出

        ********

Sub 売り_Click()

    Dim objSheet As Worksheet
    Dim ingCount As Integer      
   
    ingCount = 0
   
    Application.ScreenUpdating = False
      
       
    For Each objSheet In ThisWorkbook.Worksheets
   
        If objSheet.Range("AA3") = 2 Then
       
           Worksheets(1).Range("C21").Offset(0, ingCount) = objSheet.Range("G1")
           Worksheets(1).Range("C22").Offset(0, ingCount).Value = objSheet.Range("E3").Value
           Worksheets(1).Range("C23").Offset(0, ingCount).Value = objSheet.Range("T3").Value
                  
        ingCount = ingCount + 1
       
       
        End If
    Next
   
            Worksheets(1).Range("C22").Offset(0, ingCount) = "以上なし"
   
   Application.ScreenUpdating = True 

End Sub      
       
          ********

5.ストップ・サインの出ている銘柄の抽出

        ********

Sub ストップ_Click()

  Dim objSheet As Worksheet
    Dim ingCount As Integer
            
   
    ingCount = 0
   
    Application.ScreenUpdating = False
      
       
    For Each objSheet In ThisWorkbook.Worksheets
   
        If objSheet.Range("Z3") = "ストップ" Then
       
           Worksheets(1).Range("C26").Offset(0, ingCount) = objSheet.Range("G1")
           Worksheets(1).Range("C27").Offset(0, ingCount).Value = objSheet.Range("Y3").Value
                                    
                  
        ingCount = ingCount + 1
       
       
        End If
    Next
   
            Worksheets(1).Range("C27").Offset(0, ingCount) = "以上なし"
   
   Application.ScreenUpdating = True
   

End Sub
          
          ********

6.ストップ(4)点灯した銘柄の抽出

        ********

Sub ストップ点灯_Click()

Dim objSheet As Worksheet
    Dim ingCount As Integer
   
       
        ingCount = 0
   
    Application.ScreenUpdating = False
      
       
    For Each objSheet In ThisWorkbook.Worksheets
   
        If objSheet.Range("AA3") = 4 Then
       
            Worksheets(1).Range("C30").Offset(0, ingCount) = objSheet.Range("G1")
           Worksheets(1).Range("C31").Offset(0, ingCount).Value = objSheet.Range("Y3").Value
                                    
                
        ingCount = ingCount + 1
       
       
        End If
    Next
   
            Worksheets(1).Range("C31").Offset(0, ingCount) = "以上なし"
   
   Application.ScreenUpdating = True
       
   
End Sub

        ********

修正方法はまた後で考えるとして、これでテストしてみてください。プログラムの順序が違っていたため,途中書くのに手間取りました。多分これで良いと思います。と確認していたらまた間違えていた、あぶないあぶない・・・・・

つづく

| | コメント (0) | トラックバック (1)

2007年5月 3日 (木)

VBAの入り口 その2

 つづき

ここまで出来れば後はこの応用、入り口だけが、始めの一歩が、どんな事でも困難なのではないだろうか。後は簡単ではないが何とかなる。何とか出来そうだ・・・・・・Vba14

始めの一歩を踏み出そう

前回したように、図のように6個のボタンを作り

各々マクロ登録の新規作成(N)をクリック、して行く。

VBEは図のようになり、オブジェクト名を抽出とする。

Vba15 Sub の横を HOLD、NOポジ、買い、売り、ストップ、ストップ点灯と記入して行く。

 赤丸のところは自然と変わります。

エクセルに戻り各ボタンの名前を上からHOLD、NOポジ、買い、売り、ストップ、ストップ点灯と変えます。(前回参照

Vba18 ボタンを右クリックしてマクロの登録(N)、HOLDのボタンであればHOLDを選択し、OKをクリックします。(6個全てにしてください)右の図の様になります。

これで準備完了。

後はVBEを開きSubとEnd Subの間にソースコードを記述していきます。

記述の方法にはマクロの記録機能を使う方法、自分で記入していく方法、他の人が作ったモジュールを何処かからパクッて来る方法などがあります。

マクロの記録機能が使えれば良いのですが,エクセルの作業が今回複数のページにまたがっているので、今から書くソースコードをコピーペーストしてください。

1.HOLD(1)のサインの出ている銘柄の抽出

Sub HOLD Click() と End Sub の間に下のソースコードを貼り付けてください。

               ***********

    Dim objSheet As Worksheet
    Dim ingCount As Integer      
   
    ingCount = 0
   
    Application.ScreenUpdating = False
      
       
    For Each objSheet In ThisWorkbook.Worksheets
   
        If objSheet.Range("AA3") = 1 Then
       
           Worksheets(1).Range("C6").Offset(0, ingCount) = objSheet.Range("G1")
           Worksheets(1).Range("C7").Offset(0, ingCount).Value = objSheet.Range("E3").Value
           Worksheets(1).Range("C8").Offset(0, ingCount).Value = objSheet.Range("R3").Value
          
                  
        ingCount = ingCount + 1
       
       
        End If
    Next
   
            Worksheets(1).Range("C7").Offset(0, ingCount) = "以上なし"
            
   
   Application.ScreenUpdating = True

               **********

コードの説明

         *

Dim   ステートメントで変数は宣言をしなければなりません。

『 Dim 変数名 As データ型 

 変数名 objSheet は自分で考えて作るもので、アルファベット小文字で始めます例えば f1 でも構いません。分かりやすい短いのが良いでしょうね。

多分これは何かの本からそのまま移したと思います。

データ型 Worksheet これは普通、変数の精度 によって決まります。(これは多分オブジェクト型だと思います)

データ型 Integer は整数値

       *

For Each objSheet In ThisWorkbook.Worksheets ~

Next

objSheet(オブジェクト型)変数が1から増えていき。Nextまでワークブックの数だけくりかえします。

後でシートを増やしてもこれで対応してくれます。普通の変数型にすれば予めシート数を数えていなければなりませんし、シートを増やしたり減らしたりすればその度に変えなければなりません。

          *

If objSheet.Range("AA3") = 1 Then

End If

objSheet.はつまり最初 Worksheets(1). で Sheet1のセルAA3(売買指示サイン)が1なら次の処理をしingCountは0から1増えます(ingCount = ingCount + 1)。(当然Sheet1のセルAA3は1ではありません)

 objSheet.はWorksheets(2). となりSheet2のセルAA3が1なら次の処理をしingCountは1増えます

          *

Worksheets(1).Range("C6").Offset(0, ingCount) = objSheet.Range("G1")

セルAA3が1ならそのシート(objSheet.)のセルG1(銘柄名)がSheet1のセルC6から(0、ingCount)(行、列)離れたセルに入ります。つまりセルC6、セルD6、セルE7と右に入っていきます。Offset(0, ingCount)はそう言う意味です。

その下にE3(終値)、R3(売り+TS 予定)が入ります。

         *

残りのボタンのソースコードもこれと同じで、条件の値みどりを変えます。その下の式の記入の位置みどりを最初に記入するセル位置に、記入する値みどりを見たいセルに変えます。

つまりこの部分を変えることにより色んな表示が今後出来ると言うことです。

 素晴らしいアイデアがあればシート2以降のK列~V列までを改良して、先ほど書いたSheet1のソースコードのみどりの部分を変えると面白いことになると思います。

 話が反れてしまいましたね。

それで、今作ったボタンを押して記入された部分は消去ボタンを押しても消えませんので今からそのソースコードを昨日作った消去モジュールに付け加えていきます。1部変更しましたのでよろしくお願いします。

         ***********

Set a = Worksheets(1)
   
    a.Range("A7").ClearContents
    a.Range("C6:Q8").ClearContents
    a.Range("C11:Q13").ClearContents
    a.Range("C16:O18").ClearContents
    a.Range("C21:O23").ClearContents
    a.Range("C26:O27").ClearContents
    a.Range("C30:O31").ClearContents

         ***********

ゆいさんのコメントを試してみればすっきりしたソースになりました。

ありがとう。

 思い出しました。半年前に多分上手く行かなかったんだと、それでマクロの記録を使ったんだろうと。

この場合 Set がいるのですね。

皆さんも作って試してくださいね。

| | コメント (0) | トラックバック (1)

2007年5月 2日 (水)

VBAの入り口

 次に書く記事の予定をしてしまったので、どの様に書けば良いのか、思案していたところ過去に作っていたシートが出てきました。Vba

 去年の8月頃はまだ幼稚なことをしていて、何とかして一目で各銘柄のサインを見ようと試みていたのでしょう。この時はまだVBAを使ってのデータ取得はしていなかったので銘柄数も少なく。クエリも知りませんでした

 それで、初心に返り一から実際にやってみよう。上の半年前のように、実際に今から作り始めるという設定で,書いていこう。と言うことに決めました。

           *************

 しかし,いざ始めてみるとなかなか上手くいきません。始めてVBAに挑戦する人もこの入り口でつまずくのではないでしょうか。(プロの方から見れば何をどんくさい事をしてるねんと言われそうです。完全な関西弁)ソースコードだけを書いてこれをコピーしてくださいとするのが1番楽なんですよね。でも、実際にはこんな簡単な事でも2・3年前に漠然とこんな事が出来ないかなァ~と言う考えがあって。1年ほど前に具体的なテスト版のようなものが出来あがり。こんな機能があればと改良を重ね。本を読み,他のサイトも訪ね、そしてやっとの思いで作りました(本当は作っていく過程が楽しいのですが)。

 今から書こうとする部分も先日やっと完成したのですから、半年以上かかった事になります。

              ************

 それでは、予め作っておいたシートにVba01

1.マクロ実行用のボタンを作ります。

 表示(V),ツールバー(T),フォーム

2.フォームのボタンをクリック、セルA2、に一個、Vba02

 ななめにドラッグしてつくります。

Vba033.マクロ登録の新規作成(N)をクリック,VBEが出ますので、

Subのとなりに日付と入れ、オブジェクト名を日付としてください。Vba08

4.エクセルシートに戻り今作ったボタンを右クリック, Vba05

 テキストの編集(X),ボタンの名前を日付としてください。

5.ボタンを右クリック、マクロ登録(N)をクリックVba10

日付 Clickを選択し、OKボタンをクリックしてください。

Vba09 6.VBEに戻り、Sub 日付_Click() とEnd Subの間に

次のソースコードをコピー/ペーストしてください。

             ************

Application.ScreenUpdating = False    
   
    Worksheets(2).Select
    Range("A3").Select
    Selection.Copy
    Worksheets(1).Select
    Range("A7").Select
    ActiveSheet.Paste
   
Application.ScreenUpdating = True

             ************

Application.ScreenUpdating = をFalseにすればTrueになるまで画面が変わりません。その間にコンピュータは計算などの作業をします。

 2番目のワークシートのセルA3をコピーし1番目のワークシートのセルA7にペーストするということです。

                            ************

次に同じくマクロ実行用のボタンを作ります。このボタンは日付ボタンによって記入されたセルA7を消すものです 。セルE2の位置に作ってください。

7.マクロ登録の記録(R)をクリック,マクロの記録、Vba12

マクロ名(M)を消去 Click、ユーザー名を書いて

OKをクリックします。

8.実際にいつもエクセルでしているようにセルA7を消してください。そして記録終了のボタン■をクリックしてください。

Vba13 9.ツール(T),マクロ(M),VBE(V)でVBEを開き記述されているのを確認します。オブジェクト名を消去と書いて出来あがり。

ソースコードは

       ************

    Range("A7").Select
    Selection.ClearContents

       ************

 となります。

ボタンの名前を4.でしたように消去としてください。

上書き保存を忘れずに。

実際に動くか試してください。日付が出たり消えたりするはずです。

つづく

| | コメント (5) | トラックバック (0)

2007年5月 1日 (火)

天国から地獄へ

 市場が開けば、記事を書く材料が出てくるものだ。毎度同じ事の繰り返しなのですが。

 1983東芝プラントが下がりました。ストップ安830円を10:43に付けました。2日で20万の損失です。これは痛いです。 

 私はこの株は持っていなかったので、金曜日のPM8:00に気付きました。監視銘柄は23銘柄と少ないですが、常時見ていられるのはせいぜいその内の5銘柄ぐらいです。

 問題の当システムProgre02がこれに対しどの様に動いたか。そしてこのとき自分ならどの様に行動したか。どこか2月末の5479日金工の動きと似ているように思いますのでこれを踏まえて自分の行動とします。(持っていなかったので好きなように書けますから,完全な後講釈です)また他のパターンも2・3シュミレーションしてみます。

                ************

システム(ストップ率9%)          自分

3/6 782 1000株買い       3/16 891 1000株買い

4/4 高値 1079         ここで上手く付いていければ

4/13 995 1000株売り(+213)

                   4/13 995 1000株売り(+104)                                        

4/18 1015 1000株買い  5479日金工の場合ここで再参入し                             ようか迷った 

4/23 1004 1000株売り(-11)  しかし1000円と高い事、ボラ                  の 問題もあり

4/24 1014 1000株買い     リスク率に依っても変わりますが

4/25  1003 1000株売り(-11)   ここは買い(再参入)難いでし                ょうね。買い乗せなんてとても出来ません。               

この間の売り予定値が1006円 ちゃっかりシステムは売りぬけています。

他の悪いパターンは

1. 遅れて新規参入1000円以上。

2. 一旦利益確定後の再参入。

3. 1000円以上での買い乗せ。(300万の小資金であれば出来ない。)

4. 800円以下のよいとこで買っているのに高値で売り抜ける事が出来ない。(なにかよいシステムをもつか、自分に必要な投資ルールを考えるべきです。トレーリングストップについてもう一度よく考えましょう)

1のパターンは最悪、どうしても逃げられない。2.のパターンはもったいない、自分もよくする失敗(8606新光など)3.のパターンは良くボケ(ポジションサイズについてもう一度良く考えましょう。)4のパターンはまだ悲観する事はありませんが上手く逃げましょう。(自分の親の場合と同じ)

 ストップ率9%でシュミレーションしましたがかなり騰がっていたので2.5%でも良かったと思います。

 キツイ事を書きましたが、お許しください。反発する事をお祈りいたします。

| | コメント (0) | トラックバック (0)

« 2007年4月 | トップページ | 2007年6月 »