searchカテゴリー選択
chevron_left

カテゴリーを選択しなおす

cancel
プロフィール
PROFILE

skiさんのプロフィール

住所
未設定
出身
未設定

自由文未設定

ブログタイトル
投資でリタイア
ブログURL
https://linecalc.blog.ss-blog.jp/
ブログ紹介文
40代、リタイアしています。 親との2人での生活など雑感記録。 米株配当での質素倹約生活。 資産管理電卓(LineCalc)というフリーソフトを公開メンテナンスしています。
更新頻度(1年)

40回 / 365日(平均0.8回/週)

ブログ村参加:2018/11/14

参加カテゴリ

株ブログ / 米国株

IT技術ブログ / プログラム・プログラマー

※ランキングに参加していません

読者になる

新機能の「ブログリーダー」を活用して、skiさんの読者になりませんか?

ハンドル名
skiさん
ブログタイトル
投資でリタイア
更新頻度
40回 / 365日(平均0.8回/週)
読者になる
投資でリタイア

skiさんの新着記事

1件〜30件

  • 資産管理電卓v0.17.9.0 追加機能説明12

    資産管理電卓v0.17.9.0の追加機能についての詳細続きです。 ・エディタ検索対応 関数定義ダイアログ、配列編集ダイアログ、メインダイアログの編集部分では CTRL+F を押すと検索ダイアログが開きます。 検索された部分のテキストが選択された状態で強調表示されます。 検索ダイアログを閉じても F3 キーで続けて検索ができます。 ・関数定義ダイアログ内ショートカットキー 関数定義ダイアログ内では CTRL+S で設定ボタンを押したのと同じ動作をし、編集内容が保存されます。 ・右クリックメニュー対応 関数定義ダイアログ、メインダイアログの編集部分で右クリックすると編集メニューが表示されます。 テキストが選択された状態(マウス左クリックでドラッグするか、文字をダブルクリックする、検索する等でテキストが選択強調表示された状態)のテキストに対して処理を実行します。..

  • 資産管理電卓v0.17.9.0 追加機能説明11

    資産管理電卓v0.17.9.0の追加機能についての詳細続きです。 ・関数定義ダイアログ複数同時表示対応 関数定義ダイアログが同時に複数表示可能となっています。 これにより複数の関数の同時編集が可能となっています。 ・関数定義ダイアログ全検索対応 関数定義ダイアログに全検索チェックボックスが追加されています。 これをチェックすると関数名、コメント、定義内容を全て検索対象とします。 チェックを外すと関数名が検索対象となります。 ・関数定義ダイアログページ対応 関数定義ダイアログがページ表示に変更になっています。 関数定義が数千、数万となると GUI が重くなりすぎるために分割しました。 同時表示数も選択できますが、多くするとそれだけ重くなっていきます。 ファイル保存の対象はページ内だけですので注意必要です。

  • 資産管理電卓v0.17.9.0 追加機能説明10

    資産管理電卓v0.17.9.0の追加機能についての詳細続きです。 ・棒グラフ対応 グラフダイアログにグラフ種類ドロップダウンリストが追加され、折れ線グラフに追加して棒グラフが選べます。 C# の CGraph を使っていますが、棒グラフは棒の幅が表示数とX軸のばらつきによりうまく表示できていません。 デフォルトの設定のまま使用しています。 X軸の並びの最小の幅で棒グラフの幅が調整されるようです。 ・グラフ表示インデックス文字列対応 配列のインデックスに文字列が使用できるようになったのでグラフも対応して文字列を X 軸に取れるようになりました。

  • 資産管理電卓v0.17.9.0 追加機能説明9

    資産管理電卓v0.17.9.0の追加機能についての詳細続きです。 ・関数追加 workfld workfld はfprint等でファイルのパスを指定しない場合のデフォルトのパスを返します。 ログ出力フォルダになります。 print(workfld) C:\Users\*******\Documents\linecalc\ fprint("foo.txt","test") 上記を実行すると C:\Users\*******\Documents\linecalc\foo.txt にファイルが作成されます。 メニューの ヘルプ->ログフォルダを開く でフォルダ内に foo.txt が作成されているのが確認できます。

  • 資産管理電卓v0.17.9.0 追加機能説明8

    資産管理電卓v0.17.9.0の追加機能についての詳細続きです。 ・関数追加 bindres bindresは動作は let と同等ですが、リソースIDを変数に代入しておけば関数を出る時にローカル変数が消去されるのと同時にリソースIDの削除も行います。 ( bindres(ctx,context), ctx.foo = 1 ) print(sysinfo) ctx のコンテキストは消去されている 上記では関数内ローカル変数 ctx にコンテキストリソースをバインドします。 関数を出る時に関数内ローカル変数 ctx は消去されますがその時に ctx にバインドされていたコンテキストリソースは消去されます。 リソースは動作が終了して消去されることもありますが、消去の管理を行う必要があります。 関数内だけで使用するリソースの場合ローカル変..

  • 資産管理電卓v0.17.9.0 追加機能説明7

    資産管理電卓v0.17.9.0の追加機能についての詳細続きです。 ・関数追加 eval eval(式(式文字列)[,式(引数1)...]) eval は文字列を評価します。 eval("1+1") 2 eval には引数を指定することができます。 eval("@1*@2" ,2 ,3) 6 文字列には任意の LCS が指定可能です。 eval(" ( sum=0 , for(cnt , @1 , @2 , 1 , sum=sum+pow(1.02,cnt) ) ) " , 1 , 20) 変数が定義されているか等、動的に作った ID 文字列を判断する場合などに使用します。 配列にティカーコードを入れておいてその配列の中身を変数名として使う場合などに使用しています。 ( ..

  • 資産管理電卓v0.17.9.0 追加機能説明6

    資産管理電卓v0.17.9.0の追加機能についての詳細続きです。 ・関数追加 mgdim mgdim(ID(マージ元配列名),ID(マージ先配列名)) mgdim は cpdim と同じように配列をコピーします。 コピー前に配列を初期化せず上書きします。 配列のコピー数を返します。 ( a[1] = "a1" , a[2] = "a2" , b[2] = "b2" , b[3] = "b3" , mgdim(a,b), fordim(tag,b,lprint(tag & ":" & b[tag] & "\n")) ) 2:a2 3:b3 1:a1 上記では配列 b の内容は初期化されずaで上書きされています。

  • 資産管理電卓v0.17.9.0 追加機能説明5

    資産管理電卓v0.17.9.0の追加機能についての詳細続きです。 ・配列インデックス任意文字対応 配列のインデックスには今までは数値しか扱えませんでした。 今回文字列でのインデックスに対応しました。 valdim(foo, "銘柄A" , 1) foo["銘柄A"] = 1 インデックス文字列として100文字まで指定可能です。

  • 資産管理電卓v0.17.9.0 追加機能説明4

    資産管理電卓v0.17.9.0の追加機能についての詳細続きです。 ・多数関数定義高速化、グローバル変数上限300000に変更 グローバル変数、関数は終了時に保存され、立ち上げ時に読み込まれます。 セキュリティーや将来的な互換性の為 DB は使わずファイルに保存していますが、 グローバル変数、関数の定義が多くなった場合今までは1000個程度で立ち上げが遅くなっていました。 立ち上げが遅くて問題になってきたので高速化しました(SSD+Corei7 の環境で確認)。 高速化に伴いグローバル変数の上限を上げコンテキストリソースや関数内ローカル変数と同様 300000 に緩和しました。 資産変動などを毎日30年程度記録すると1万変数程度にはなりますが、30項目程度は対応できることになります。

  • 資産管理電卓v0.17.9.0 追加機能説明3

    資産管理電卓v0.17.9.0の追加機能についての詳細続きです。 ・初期化、終了関数対応 立ち上げ時に資産状況の更新などを行うには今までは直接計算エリアにコマンドを記載していました。 今回システムとして立ち上げ時に実行される関数、終了時に実行されるグローバル関数を定義しました。 ・$sys_init $sys_init に立ち上げ時に実行される関数を記載します。 定義しない場合はスペース文字、改行を全く含まない空にするか$sys_init を削除する必要があります。 アプリ全体で使用するクラスなどを定義するのにも使用できます。 /* 起動時に実行する */ ( libdef /* ライブラリ定義 */ ,preregdata /* 更新前データ記録 */ ,yreg /* 年更新 */ ,netval /* 米株価更新 */ ,jnet..

  • 資産管理電卓v0.17.9.0 追加機能説明2

    資産管理電卓v0.17.9.0の追加機能についての詳細続きです。 資産管理電卓のスクリプト言語LCSはできるだけ言語仕様を複雑にせず式だけで構成されています。 従来の言語では専用構文で表現されている機能も全て関数と式で表しているので覚える構文が少ないのが特徴です。 ただ、条件分の判定式などに関数を使うと式が複雑になりすぎて後で見て何をしているのかわかりにくくなることがあり今回演算子を追加しました。 ・=演算子 = 演算子は変数の代入を行います。 従来の let に変わるものですが、let もそのまま使用できます。 従来は変数が定義されていない場合アクセスするとエラーになりましたが、0を返すようになりました。 let(foo,123) foo=123 ・[]演算子 [] 演算子は配列の要素アクセスを行います。 従来の valdim に変わるもの..

  • 資産管理電卓v0.17.9.0 追加機能説明1

    資産管理電卓v0.17.9.0の追加機能についての詳細です。 今回全バージョンと非互換性が発生します。 ・grph 関数の引数変更 グラフ表示に棒グラフが追加されています。 その関係でグラフリソース作成関数 grph の引数が変化しています。 grph(ID[,式2[,式3[,式4[,式5,式6,式7,式8,式9,式10]]]) ID->表示配列名 式2->ラベル名 式3->0:数値 1:日付 式4->0:折れ線グラフ 1:棒グラフ 式5->X最小値 式6->X最大値 式7->X区切り単位 式8->Y最小値 式9->Y最大値 式10->Y区切り単位。 式5の前に折れ線グラフか、棒グラフを指定できるようになりました。 デフォルトは折れ線グラフです。 ・'!'修飾文字を'#'に変更 関数を評価せずに定義を返す修飾子 ! が # に修..

  • 資産管理電卓(LineCalc)V0.17.9.0公開

    資産管理電卓(LineCalc)V0.17.9.0を公開しました。 https://linecalc.blog.ss-blog.jp/LineCalcDownload 今回全バージョンと非互換性が発生します。 ・grph 関数の引数変更 ・'!'修飾文字を'#'に変更 ・fload,fprint,delfile,existfile パス無し時の保存先変更 ・インストーラに自己証明書追加 主な変更点は ・関数追加 mgdim eval bindres workfld ・prc引数対応 ・演算子追加 [],=,!, <, <=, >, >=, ==, !=, ||, && ・シーケンス追加 ・初期化、終了関数対応 ・多数関数定義高速化、グローバル変数上限300000に変更 ・配列インデックス任意文字対応 ・棒グラフ対応..

  • 資産管理電卓v0.16.47.0 追加機能説明5

    資産管理電卓v0.16.47.0の追加機能についての詳細続きです。 ・式の解関数solve 対応 未知数を @1 として記述した式の解を1つ求める関数を作成しています。 solve(式(左辺式文字列)[,式(右辺式文字列)[,式(求める範囲最小値)[,式(求める範囲最大値)[,式(許容誤差)]]]]) これは高機能な関数電卓にある SOLVE 機能と同じものです。 solve("0.5*pow(@1,10)=1") 上記では50%減配した銘柄が年率いくら増配を続けると 10 年で元の配当率に戻るかを計算します。 上記では 1.07177346253629 が返ってきます。7.1% 毎年増配すれば10年後は元の配当率に戻ります。 solve では上記のように引数が1つの場合は = で式を結んだ文字列を渡すと = の前後で文字列を分割して内部的..

  • VisualStudio2019 Microsoft Visual Studio Installer Projects インストール不能対策

    VisualStudio2019 で Visual Studio Installer Projects のインストールに失敗してインストーラーを作成不能になりました。 以下解決したので忘備録として記載します。 現象としては VisualStudio 2019 を立ち上げるとよく覚えてないですが Installer Project か何かのアップデート通知が来ていました。 それでアップデートを行ったところ、 インストールに失敗しましたとダイアログが出ました。 良くわからず再起動すると普通に立ち上がりコンパイルできましたが、インストーラプロジェクトが<非互換>のマークがついて作成不能になっていました。 それで、色々調べましたが、 failed to install. System.IO.IOException: The file 'C:\Program Fil..

  • 資産管理電卓v0.16.47.0 追加機能説明4

    資産管理電卓v0.16.47.0の追加機能についての詳細続きです。 ・cpdim 対応 配列変数をコピーする関数を追加しました。 cpdim(ID( コピー元配列名 ), ID(コピー先配列名)) seq( letdim(foo,1 ,1), letdim(foo,2 ,1), cpdim(foo,foo2) /* 配列 foo を foo2 にコピー */ ) foo の配列を foo2 にコピーしています。 コピー先配列は始めに初期化されます。 seq( letdim(foo,1 ,1), letdim(foo,2 ,1), let(ct,context), cpdim(foo,ct.taa), /* 配列 foo を ct.taa にコピー */ print(valdim(ct.taa,1)+valdim(c..

  • 資産管理電卓v0.16.47.0 追加機能説明3

    資産管理電卓v0.16.47.0の追加機能についての詳細続きです。 ・コンテキスト関係関数rdump,setrcom,getrcom,cload 対応 リソース関係の関数が追加されています。 ・setrcom,getrcom リソースの作成状況は sysinfo により文字列として得られます。 この時にリソースの種類はわかりますが、内容はわかりませんでした。 setrcom( 式(リソース ID), 式 コメント文字列) getrcom( 式 リソース ID)) 上記でリソースのコメントを設定できます。 設定したリソースのコメントは sysinfo により表示されます。 また、getrcom でも得ることができます。 seq( let(ct,context), setrcom(ct,"テストコンテキスト"), print(sysinfo..

  • 資産管理電卓v0.16.47.0 追加機能説明2

    資産管理電卓v0.16.47.0の追加機能についての詳細続きです。 ・グラフダイアログの複数表示対応 今まではグラフボタンを押して出てくるグラフダイアログはモーダルダイアログで表示している間はメイン画面にはアクセスできず、1つしか表示できませんでした。 グラフダイアログは複数のスケールに対応していない為同時に2つ以上出したい場合があります。 モードレスダイアログに変更して同時に2つ以上出せるようにしました。 ・変数定義数グローバル30000,その他300000に対応 グローバル変数($出始まる変数と関数ダイアログで定義する変数)は定義すると終了時に自動でファイルに保存されます、関数内で let で定義する $ 出始まらない変数やコンテキスト内変数は自動ではファイルに保存されません。 グローバル変数は自動で保存される関係上数に制限を掛けないと保存や起動に時間がかかります..

  • 資産管理電卓v0.16.47.0 追加機能説明1

    資産管理電卓v0.16.47.0の追加機能についての詳細を記載していきます。 まずはバグっぽい物からです。 ・input中断対応 input コマンドで入力ダイアログを開いた際にモードレスダイアログであったためにメイン画面の中断を押すことが出来なくなり、最悪中断不能になることがありました。 seq( while(1 ,input("taa")) ) 上記のようにループ中に input を入れると処理したのちに直ぐに input ダイアログが表示され中断不能に陥っていました。 モードレスダイアログにして中断ボタンが押せるようにしました。 ・waitres 中断対応 waitres の処理の最中に中断判定が抜けていたため waitres で待っているリソースが終了しない場合に中断できなくなっていました。 seq( let(ct,context..

  • 資産管理電卓(LineCalc)V0.16.47.0公開

    資産管理電卓(LineCalc)V0.16.47.0を公開しました。 https://linecalc.blog.ss-blog.jp/LineCalcDownload 主な変更点は ・input中断対応 ・変数定義数グローバル30000,その他300000に対応 ・コンテキスト関係関数rdump,setrcom,getrcom,cread 対応 ・waitres 中断対応 ・ログフォルダ表示、分割対応 ・式の解関数solve 対応 ・細かな不具合修正 です。 細かな仕様漏れの対応とコンテキスト関係の関数を揃えました。 ログが大量になると開くのも表示するのも重くなったので自動で分割するようにしました。 コンテキストをファイルに保存、ファイルから読み込みできる関数を用意しました。 また、コンテキストにコメントを付けられるようにして sysinfo ..

  • 資産管理電卓v0.16.35.0 追加機能説明13

    資産管理電卓v0.16.35.0 追加機能説明の続きです。 ・hamean(ID(配列名)[,開始インデックス[,終了インデックス]])  ヒストグラム配列の算術平均値(Arithmetic mean)を返す ・hgmean(ID(配列名)[,開始インデックス[,終了インデックス]])  ヒストグラム配列の幾何平均値(Geometric mean)を返す ・hhmean(ID(配列名)[,開始インデックス[,終了インデックス]])  ヒストグラム配列の調和平均値(Harmonic mean)を返す ・hmed(ID(配列名)[,開始インデックス[,終了インデックス]])  ヒストグラム配列(インデックスが値で値が度数)のメディアン(中央値)を返す ・hdis(ID(配列名)[,開始インデックス[,終了インデックス]])  ヒストグラム配列の分散(di..

  • 資産管理電卓v0.16.35.0 追加機能説明12

    資産管理電卓v0.16.35.0 追加機能説明の続きです。 ・cor(ID(配列名1),ID(配列名2),[,同じインデックスとする範囲,[開始インデックス[,終了インデックス]]])  配列の相関係数(Correlation coefficient)を返す 関数 cor は配列の相関係数を返します。 相関係数とは共分散の値が大きくなりすぎたり小さすぎたりして扱いにくいので -1~1 の値に収まるように正規化した値を返します。 配列2つの同じインデックス(または近い)値をそれぞれの配列の平均値で減算し掛け合わせたものを全て足し合わせて配列の数で割ったものを配列1の標準偏差*配列2の標準偏差で割ったものです。 同じインデックス(または近い)ものだけが計算されます。 seq( letdim(foo , 1 , 10), letdim(foo , 2..

  • 資産管理電卓v0.16.35.0 追加機能説明11

    資産管理電卓v0.16.35.0 追加機能説明の続きです。 ・cov(ID(配列名1),ID(配列名2),[,同じインデックスとする範囲,[開始インデックス[,終了インデックス]]])  配列の共分散(Covariance)を返す 関数 cov は配列の共分散を返します。 共分散とは配列2つの同じインデックス(または近い)値をそれぞれの配列の平均値で減算し掛け合わせたものを全て足し合わせて配列の数で割ったものです。 同じインデックス(または近い)ものだけが計算されます。 seq( letdim(foo , 1 , 10), letdim(foo , 2 , 20), letdim(foo , 3 , 300), letdim(foo2 , 1 , 15), letdim(foo2 , 2 , 22), letdim(foo2 ..

  • 資産管理電卓v0.16.35.0 追加機能説明10

    資産管理電卓v0.16.35.0 追加機能説明の続きです。 ・med(ID(配列名)[,開始インデックス[,終了インデックス]])  配列のメディアン(中央値)を返す 関数 med は配列の中央値を返します。 中央値とは配列の値をソートしてその真ん中の値の事です。 seq( letdim(foo , 1 , 10), letdim(foo , 2 , 20), letdim(foo , 3 , 300), med(foo) ) 上記では配列 foo の値の中央値を求めます。20が返ります。 算術平均 amean を取ると 110 が返ります。 値の分布が偏っている場合平均は偏った値により意味をなさないことがあります。 その場合は中央値をとった方が意味がある場合があります。 中央値が2つあった場合は2つの平均を返し..

  • 資産管理電卓v0.16.35.0 追加機能説明9

    資産管理電卓v0.16.35.0 追加機能説明の続きです。 ・dis(ID(配列名)[,開始インデックス[,終了インデックス]])  配列の分散(dispersion)を返す 関数 dis は配列の分散を返します。 分散とは配列の値から配列全体の算術平均を引いて2乗したものを全て足し合わせて配列の個数で割ったものです。 seq( letdim(foo , 1 , 100), letdim(foo , 2 , 200), letdim(foo , 3 , 300), dis(foo) ) 上記では配列 foo の値の分散を求めます。 分散は平均値からどれだけ離れているかを示します。 離れている値にはプラスとマイナスがあり符号を消さないといけませんが数学上条件判断を入れると複雑になるので2乗した値になっています。 ですので実際..

  • 低成長環境での資産形成シミュレーション-どう生きるかによる答えのない資産運用

    新コロナウイルスによる景気後退懸念が広がっています。 資産形成をするには大まかにキャピタルゲイン、インカムゲインを目指す方向があると思います。 インカムゲインを狙い自分年金を積み立てる場合こういう景気後退期が長く続くとどうなるのかシミュレーションしてみようと思います。 ソースは、 /* 株価変動と配当による資産シミュレーション */ seq( let(kabu , 100), /* 株価 */ let(dpay,1) , /* 配当額 */ let(kabunum,1), /* 株数 */ let(kabuuprate,-0.05), /* (※)ここを変更 株価増加率 */ let(divuprate,0.03), /* (※)ここを変更 増配率 */ /* 10年間積み立て */ for(yer,1 , 10 , 1 ..

  • 資産管理電卓v0.16.35.0 追加機能説明8

    資産管理電卓v0.16.35.0 追加機能説明の続きです。 ・hmean(ID(配列名)[,開始インデックス[,終了インデックス]])  配列の調和平均値(Harmonic mean)を返す 関数 hmean は配列の調和平均を返します。 調和平均とは配列の値を全て逆数にして足し合わせ配列の個数で割って逆数を取ったものです。 seq( letdim(foo , 1 , 50), letdim(foo , 2 , 60), letdim(foo , 3 , 70), hmean(foo) ) 上記では時速 50km,60km,70km で同距離を走った場合の平均速度を求めています。 速度というものは単位距離をどれだけの時間で移動できるかという事を示しています。 一定の速度で1kmの距離を走った場合かかる時間は 時速50km..

  • 資産管理電卓v0.16.35.0 追加機能説明7

    資産管理電卓v0.16.35.0 追加機能説明の続きです。 ・gmean(ID(配列名)[,開始インデックス[,終了インデックス]])  配列の幾何平均値(Geometric mean)を返す 関数 gmean は配列の幾何平均を返します。 幾何平均とは配列の値を全て掛け合わせて配列の個数で平方根を取ったものです。 seq( letdim(foo , 1 , 1.03), letdim(foo , 2 , 1.00), letdim(foo , 3 , 1.02), gmean(foo) ) 上記では配列 foo の値の幾何値を求めます。 幾何平均というのは複利計算で3%,0%,2%と金利が上がっていった場合平均で毎年何%の金利上昇だったか等を計算します。 毎年変動した額に対しての変動なので算術平均では平均の変化率を計算..

  • 資産管理電卓v0.16.35.0 追加機能説明6

    資産管理電卓v0.16.35.0 追加機能説明の続きです。 ・amean(ID(配列名)[,開始インデックス[,終了インデックス]])  配列の算術平均値(Arithmetic mean)を返す 関数 amean は配列の算術平均を返します。 算術平均とは配列の値を全て足し合わせて配列の個数で割ったものです。 seq( letdim(foo , 1 , 100), letdim(foo , 2 , 200), letdim(foo , 3 , 300), amean(foo) ) 上記では配列 foo の値の平均値を求めます。 起動するたびにその日の色々なデータをグローバル変数に設定するような LCS のスクリプトを組んでいます。 頭に "$" が付いた変数、関数がグローバル変数、関数です。 (※)関数定義ダイアログからは..

  • 資産管理電卓v0.16.35.0 追加機能説明5

    資産管理電卓v0.16.35.0 追加機能説明の続きです。 今回統計関数が追加されています。 統計に関しては一般的にどういった関数が実装されているのかわからないのですが僕が持っている本に載っている関数を実装しました。 関数は、 ・amean(ID(配列名)[,開始インデックス[,終了インデックス]])  配列の算術平均値(Arithmetic mean)を返す ・gmean(ID(配列名)[,開始インデックス[,終了インデックス]])  配列の幾何平均値(Geometric mean)を返す ・hmean(ID(配列名)[,開始インデックス[,終了インデックス]])  配列の調和平均値(Harmonic mean)を返す ・dis(ID(配列名)[,開始インデックス[,終了インデックス]])  配列の分散(dispersion)を返す ..

カテゴリー一覧
商用