事象の水平線

個人的ブックマーク代わりなメモ書きブログ。 地球は丸いよ。↓このへん。

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop
その後、『データの初期化』を聞かれる条件がなんとなく解った。(ソース見て確認しろょ)

C:\Documents and Settings\○○\Application Data\Tactico Personal\daily』の中に『0201』(Topixかなんかかな?)が無いと毎回起動時に聞かれるらしい。

なので、改造をして初期化を聞かれる人は、空っぽのファイルでいいので入れておきましょう。

それと、指数関連はオメガとは共通ではないようなので、何とかしたい人はソースを眺めてください。(´・ω・`)
今のTacticoではまったく使う気にならないので、その辺を何とかするのは近くない未来になるでしょう。

また、前回、『起動時に毎回最新(かどうかは知らんけど・・)の『index.txt』を読みに行ってるのかな?』と書いたけど、その後の動作を見ていると起動時に毎回ではないみたい。
恐らく、株価データ取得時だね・・・
まぁ、普通ならそうするわな・・・

どうでもいいけどね・・・・(´・ω・`)

スポンサーサイト

PageTop
OmegaChartの後継ソフトTacticoが公開され、ソースも公開され、Windows2000がメインマシンの私としてはC#2008(WinXP必須)でしか、コンパイルできないタクティコをインストールするのは面倒だったのですが、なんとな~くノートPCのほうでインストール&ソースコンパイル、ついでにオメガチャートのデータを利用できるようにしてみました。

以下 TacticoでOmegaChartの株価データを参照する改変内容とTacticoのコンパイル方法。
あ、くれぐれも自己責任でお願いします。データ消えてもシランス(´・ω・`)


まず、Visual C# 2008 Express(言わずもがな無料!!)をインストールします。(前述どおりXP必須です)
インストール法とかはググって下さいな。

次に、ソースコードを頂戴いたします。
http://www.lagarto.co.jp/tactico/download.html
ソースコードは~の部分をクリックし、下のほう『Subversion リポジトリの参照』をクリック、『Download tarball』をクリックでダウンロードします。

フォルダを開いていき『trunk\Bellagio.sln』をダブルクリックで開きます。




前置き終了です。




ソリューションエクスプローラー上で以下二つのパスのとおっていない参照を削除します。

Demeter>参照設定>nunit.framework

Hermes>参照設定>nunit.framework

次に、何故こうなっているのかよく解らないけどプリプロセッサによって存在の消されてしまうメソッドを復活させます。

『編集>検索と置き換え>クイック検索』(or Ctrl+F)で検索画面を出し、ソリューション全体を『internal void ReplaceQuotes(ConcreteQuote q)』で検索します。

『#if UNITTEST』 と 『#endif』 に挟まれたReplaceQuotesメソッドを#if~#endifの外に出します。

#if UNITTEST
        internal void ReplaceTimeAndSales(TimeAndSales ts) {
            _timeAndSales = ts;
        }
        internal void ReplaceQuotes(ConcreteQuote q) {
            _minutely = q;
        }
#endif
↓こんなかんじ
#if UNITTEST
        internal void ReplaceTimeAndSales(TimeAndSales ts) {
            _timeAndSales = ts;
        }
#endif
        internal void ReplaceQuotes(ConcreteQuote q) {
            _minutely = q;
        }

次に、ソリューション全体を『GetfileName(Stock stock)』で検索。
GetfileNameメソッドの中の

string dir = PersonalPlugin.Instance.BellagioEnvironment.DataHomeDir + "daily";



string dir = System.Environment.GetFolderPath(System.Environment.SpecialFolder.ProgramFiles) + @"\OmegaChart\data";

に変更します。

以上で『ビルド>ソリューションのビルド』(or F6)でコンパイルし、エラーが出なければ終了。

root.tar\tactico\trunk\Personal\obj\Release』の中の『Tactico.Personal.dll』を入れ替えれば、OmegaChartの株価データを読みに行きます。



以下戯言



めでたしめでたし。

と、思い、.exeをフォルダもろともメインのWindows2000マシンに入れて起動したら、いきなりファイヤーウォールが『www.lagarto.co.jpに繋ごうとしてるけど?』とのたまう。

(´・ω・`)ナンデスノ?

まあ、気にせず『接続を遮断!
『The operation has timed out』とか言われたけどソンナノカンケーネー。
『データの初期化』とかも言われたけれど、ソンナノカンケーネー。

で、日経平均がばっちり1970年代から表示され、他の銘柄はどうかな?と思って 『6』 ・ 『5』 ・ 『0』 ・ 『1』 ぽちっとな。
あれ??表示されません。

(´・ω・`)ンムーナンデスノ?

で、気付きます。繋がないと駄目なのか・・・
んー・・・・・・・あーもしや、index.txtかっ。ピコーン

起動時に毎回最新(かどうかは知らんけど・・)の『index.txt』を読みに行ってるのかな?
まぁ、ソース見れば解ることだろうけど、恐らくそうだろう。

ちなみに、『index.txt』と『options.conf』は『C:\Documents and Settings\○○\Application Data\Tactico Personal』に格納されます。

そして、またまた気付くのです。


もし、index.txtが常に最新の物が入手できるなら、そのままOmegaChartに使えると!


それだっ!



これは行けると思いながら、index.txtを開いてみると、『date=20080529』ふ・・ふるすぎる・・・

PageTop

現象


以下のエラーが出てMSがクラッシュ
例外エラー
D:\Prj\MS\STLibrary\Src\stDrawSet.cpp(140)
WindowsAPI(CreateCompatibleBitmap)でエラーが発生しました

原因


原因は『マイページ』に有るらしい。
『マイページ』の表示の有無に関係なく起こるらしい。

応急処置法


C:\Program Files\MarketSpeed\MarketSpeed(MarketSpeed.exeのあるルート)下の以下のファイルを削除
(問題が起きたら毎回これで対処しよっと。)
これでも駄目ならリインストール
・ MsCache
・ MsCacheEnv
・ MsCacheEnvIndex
・ MsCacheIndex
・ MsImages

PageTop
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication1 {
    class Program {
        /// アプリケーションのメイン エントリ ポイントです。
        [STAThread]
        static void Main() {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    }
    public class Form1 : Form {
        /// 必要なデザイナ変数です。
        private System.ComponentModel.IContainer components = null;


        /// 使用中のリソースをすべてクリーンアップします。
        protected override void Dispose(bool disposing) {
            if(disposing && (components != null)) {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        #region Windows フォーム デザイナで生成されたコード

        /// デザイナ サポートに必要なメソッドです。このメソッドの内容を
        /// コード エディタで変更しないでください。
        private void InitializeComponent() {
            this.components = new System.ComponentModel.Container();
            this.timer1 = new System.Windows.Forms.Timer(this.components);
            this.label1 = new System.Windows.Forms.Label();
            this.button1 = new System.Windows.Forms.Button();
            this.SuspendLayout();
            //
            // timer1
            //
            this.timer1.Enabled = true;
            this.timer1.Interval = 400;
            this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
            //
            // label1
            //
            this.label1.BackColor = System.Drawing.Color.Black;
            this.label1.ForeColor = System.Drawing.Color.Red;
            this.label1.Location = new System.Drawing.Point(100, 140);
            this.label1.Name = "label1";
            this.label1.Size = new System.Drawing.Size(129, 68);
            this.label1.TabIndex = 0;
            this.label1.Text = "label1";
            //
            // button1
            //
            this.button1.Location = new System.Drawing.Point(71, 61);
            this.button1.Name = "button1";
            this.button1.Size = new System.Drawing.Size(75, 23);
            this.button1.TabIndex = 1;
            this.button1.Text = "button1";
            this.button1.UseVisualStyleBackColor = true;
            this.button1.Click += new System.EventHandler(this.button1_Click);
            //
            // Form1
            //
            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(292, 273);
            this.Controls.Add(this.button1);
            this.Controls.Add(this.label1);
            this.Name = "Form1";
            this.Text = "Form1";
            this.ResumeLayout(false);

        }

        #endregion

        private System.Windows.Forms.Timer timer1;
        private System.Windows.Forms.Label label1;
        private System.Windows.Forms.Button button1;

        public Form1() {
            InitializeComponent();
        }
        private int i;
        private void timer1_Tick(object sender, EventArgs e) {
            if(i % 2 == 0) { colorOff(); }
            else { colorOn(); }
            label1.Text = i.ToString();
            if(i > 4) timer1.Stop();
            Invalidate();
            i++;
        }

        private void button1_Click(object sender, EventArgs e) {
            i = 0;
            timer1.Start();
        }

        private void colorOn() {
            this.label1.BackColor = System.Drawing.Color.Black;
            this.label1.ForeColor = System.Drawing.Color.Red;
        }
        private void colorOff() {
            this.label1.BackColor = System.Drawing.Color.Red;
            this.label1.ForeColor = System.Drawing.Color.Black;
        }
    }
}

PageTop
◆F1~F16
F1 112 vbKeyF1
F2 113 vbKeyF2
F3 114 vbKeyF3
F4 115 vbKeyF4
F5 116 vbKeyF5
F6 117 vbKeyF6
F7 118 vbKeyF7
F8 119 vbKeyF8
F9 120 vbKeyF9
F10 121 vbKeyF10
F11 122 vbKeyF11
F12 123 vbKeyF12
F13 124 vbKeyF13
F14 125 vbKeyF14
F15 126 vbKeyF15
F16 127 vbKeyF16
◆0~9
0 48 vbKey0
1 49 vbKey1
2 50 vbKey2
3 51 vbKey3
4 52 vbKey4
5 53 vbKey5
6 54 vbKey6
7 55 vbKey7
8 56 vbKey8
9 57 vbKey9
◆0~9(テンキー)
0 96 vbKeyNumpad0
1 97 vbKeyNumpad1
2 98 vbKeyNumpad2
3 99 vbKeyNumpad3
4 100 vbKeyNumpad4
5 101 vbKeyNumpad5
6 102 vbKeyNumpad6
7 103 vbKeyNumpad7
8 104 vbKeyNumpad8
9 105 vbKeyNumpad9
アスタリスク 106 vbKeyMultiply
プラス 107 vbKeyAdd
Enter 108 vbKeySeparator
マイナス 109 vbKeySubtract
ピリオド 110 vbKeyDecimal
スラッシュ 111 vbKeyDivide
◆A~Z
A 65 vbKeyA
B 66 vbKeyB
C 67 vbKeyC
D 68 vbKeyD
E 69 vbKeyE
F 70 vbKeyF
G 71 vbKeyG
H 72 vbKeyH
I 73 vbKeyI
J 74 vbKeyJ
K 75 vbKeyK
L 76 vbKeyL
M 77 vbKeyM
N 78 vbKeyN
O 79 vbKeyO
P 80 vbKeyP
Q 81 vbKeyQ
R 82 vbKeyR
S 83 vbKeyS
T 84 vbKeyT
U 85 vbKeyU
V 86 vbKeyV
W 87 vbKeyW
X 88 vbKeyX
Y 89 vbKeyY
Z 90 vbKeyZ
◆その他のボタン
BackSpace 8 vbKeyBack
Tab 9 vbKeyTab
Enter 13 vbKeyReturn
Shift 16 vbKeyShift
Ctrl 17 vbKeyControl
Alt 18 vbKeyMenu
Pause 19 vbKeyPause
Esc 27 vbKeyEscape
変換 28
無変換 29
スペース 32 vbKeySpace
PgUp 33 vbKeyPageUp
PgDown 34 vbKeyPageDown
Home 36 vbKeyHome
37 vbKeyLeft
38 vbKeyUp
39 vbKeyRight
40 vbKeyDown
Ins 45 vbKeyInsert
Del 46 vbKeyDelete
Win 91
ポップアップ 93
NumLock 144 vbKeyNumlock
: 186
; 187
, 188
- 189
. 190
/ 191
@ 192
[ 219
\ 220
] 221
^ 222
226

PageTop

簡易破産確立表

縦軸が勝率、横軸が平均利益額/平均損失額

 0.50.75123456810
5%100%100%100%100% 100%100%100%100% 100%100%
10%100%100%100%100% 100%100%100%100% 100%82.2%
15%100%100%100%100% 100%100%100%84.9% 44.9%32.5%
20%100%100%100%100% 100%99%46.7%29.7%17.8%14.4%
25%100%100%100%100% 99%30.3%16.2%11.3%7.8%6.7%
30%100%100%100%100% 27.7%10.2%6%4.5%3.4%3.1%
35%100%100%100%60.8% 8.2%3.6%2.3%1.8%1.5%1.4%
40%100%100%100%14.3% 2.5%1.3%0.8%0.8%0.7%0.6%
45%100%100%100%3.3% 0.8%0.4%0.3%0.3%0.2%0.2%
50%100%100%99%0.8% 0.2%0.1%0.1%0.1%0.1%0.1%
55%100%100%13.2%0.2%0.1%0.1% 0%0%0%0%
60%100%24.8%1.7%0%0% 0%0%0%0% 0%
65%100%2.1%0.2%0%0% 0%0%0%0% 0%
70%12.8%0.1%0%0%0% 0%0%0%0% 0%
75%4%0%0%0% 0%0%0%0% 0%0%
80%0%0%0%0% 0%0%0%0% 0%0%
85%0%0%0%0% 0%0%0%0% 0%0%
90%0%0%0%0% 0%0%0%0% 0%0%

PageTop

呼び値

※2008/7/22変更

基準値段呼値の単位最大幅最小幅
2,000円以下1円100%0.05%
2,000円~3,000円以下5円0.25%0.16%
3,000円~3万円以下10円0.33%0.03%
3万円~5万円以下50円0.16%0.03%
5万円~30万円以下100円0.20%0.03%
30万円~300万円以下1,000円0.33%0.03%
300万円~2,000万円以下1万円0.33%0.05%
2,000万円~3,000万円以下5万円0.25%0.16%
3,000万円~10万円0.33%

制限値幅

基準値段 制限値幅(+-)上限幅下限幅
100円未満 30円3000%30%
100円以上 200円未満 50円50%25%
200円以上 500円未満 80円40%16%
500円以上 1,000円未満 100円20%10%
1,000円以上 1,500円未満 200円20%13%
1,500円以上 2,000円未満 300円20%15%
2,000円以上 3,000円未満 400円20%13%
3,000円以上 5,000円未満 500円17%10%
5,000円以上 1万円未満 1,000円20%10%
1万円以上 2万円未満 2,000円20%10%
2万円以上 3万円未満 3,000円15%10%
3万円以上 5万円未満 4,000円13%8%
5万円以上 7万円未満 5,000円10%7%
7万円以上 10万円未満 1万円14%10%
10万円以上 15万円未満 2万円20%13%
15万円以上 20万円未満 3万円20%15%
20万円以上 30万円未満 4万円20%13%
30万円以上 50万円未満 5万円17%10%
50万円以上 100万円未満 10万円20%10%
100万円以上 150万円未満 20万円20%13%
150万円以上 200万円未満 30万円20%15%
200万円以上 300万円未満 40万円20%13%
300万円以上 500万円未満 50万円17%10%
500万円以上 1,000万円未満 100万円20%10%
1,000万円以上 1,500万円未満 200万円20%13%
1,500万円以上 2,000万円未満 300万円20%15%
2,000万円以上 3,000万円未満 400万円20%13%
3,000万円以上 5,000万円未満 500万円17%10%
5,000万円以上 1,000万円20%

特例措置

特例として、ストップ高/ストップ安が3日連続で続いた場合には、値幅制限を2倍とする拡大措置がとられる。
以下の条件を全て満たした場合、上限値幅のみ2倍に拡大される。逆に、同様の条件で3日連続ストップ安の場合は、下限値幅のみ2倍に拡大される。
この拡大措置は、連続ストップ高/ストップ安が途切れた日、または出来高の条件を満たさなかった日の翌営業日から解除され、通常の値幅制限に戻される。

取引所条件
東証
マザーズ
・ 3日連続、ストップ高
・ 3日間、ザラバ中に出来高がない
・ 3日間、比例配分がない
大証
ヘラクレス
・ 3日連続、ストップ高
・ 3日間、ザラバ中に出来高がない
JASDAQ ・ 3日連続、ストップ高

なお、社会情勢の混乱などで大暴落が予想されるときには、値幅制限の縮小といった臨時措置がとられる事がある。最近では、米国同時多発テロ事件が発生した翌日、東証の値幅制限が通常の2分の1に縮小された。

特別気配の更新値幅(5分更新)

気配値段 値幅(+-)
500円未満 5円
500円以上 1,000円未満 10円
1,000円以上 1,500円未満 20円
1,500円以上 2,000円未満 30円
2,000円以上 3,000円未満 40円
3,000円以上 5,000円未満 50円
5,000円以上 1万円未満 100円
1万円以上 2万円未満 200円
2万円以上 3万円未満 300円
3万円以上 5万円未満 400円
5万円以上 7万円未満 500円
7万円以上 10万円未満 1,000円
10万円以上 15万円未満 2,000円
15万円以上 20万円未満 3,000円
20万円以上 30万円未満 4,000円
30万円以上 50万円未満 5,000円
50万円以上 100万円未満 1万円
100万円以上 150万円未満 2万円
150万円以上 200万円未満 3万円
200万円以上 300万円未満 4万円
300万円以上 500万円未満 5万円
500万円以上 1,000万円未満 10万円
1,000万円以上 1,500万円未満 20万円
1,500万円以上 2,000万円未満 30万円
2,000万円以上 3,000万円未満 40万円
3,000万円以上 5,000万円未満 50万円
5,000万円以上 100万円

PageTop
数ヶ月前にMicrosoftがOutlook ExpressでのHotmailサポートを止めると言うので、仕方なく以前にも一度使って使い勝手が馴染まなかったThunderBirdに乗り換えた。

で、『ツール>アカウント設定』 の 『編集とアドレス入力』で『HTML形式でメッセージを編集する』のチェックを外し、これでプレーンテキストでメールが送れるものだと思って数ヶ月に渡り使っていた。

が、メール本文の中にあるメールアドレスをクリックすると今までなかったHTML編集用のボタンみたいなものがついてるではないか・・・・・(`・ω・´)ナニヲ?

~ 色々格闘 ブチギレそうになりつつ中略 ~

で、結論です。

『ツール>オプション>詳細タブ>一般タグ』の『設定エディタ』をクリック
(FireFoxで言うところのabout:configですな。)

『フィルタ』に『html』と入れて

キー:mail.html_compose

値:false

キー:mail.identity.default.compose_html

値:false

で、あのにっくきHTMLボタンは二度と現れなくなりました。

FireFoxも3にして、このところ色々とMozilla ぶーぶー です・・・・(´・ω・`)

PageTop
ちょっとした備忘録などPCのディレクトリを気にせずにメモを取っておきたい時、毎回HTMLを手打ちしていたけど、面倒くさくなってきたのでブログにしようととりあえず開設。
最も背中をプッシュした原因はSDL+とかを置いているLand.to鯖の遅さ・・・・何ナノあれ・・(´・ω・`)

以前にもブログはMovable Typeをインストールしたものを一つ作ったものの、使い勝手がいまいち気に入らなかったりして、何しろまたphpと格闘したりするほどのことでもないので、何でもよかったのだけどFC2にした。
ライブドアとサイバーエージェントは使ってる人多いけどなんとなくやめてみた。

で、FC2ってなに?
(´・ω・`)シランガナ

半角OKなんだー

PageTop
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。