メーカー | Hewlett-Packard | |
型名 | HP 12c Platinum (F2231AA) | |
種別 | 金融電卓 | |
発売開始 | 2003年。ただし、筆者が入手したものは2007年版と思われる。 | |
製造終了 | - | |
寸法 | 奥行 79mm × 幅 129mm × 厚さ 15mm(背面のゴム足を含めると15.5mm程度) | |
重量 | 約118g(電池を含む実測値) | |
入力方式 | 標準方式(ALGモード)、4 Level RPN | |
画面 | 白黒液晶7セグメント10桁+負号+状態インジケーター10個(Undo含む)+バッテリー切れアイコン | |
CPU |
英語版Wikipedia
(2018年1月19日現在)によると、
初期型は SPLB20D2 (6502ベース)。 2005年以降は GPLB31A (6502ベース)。 hpcalc.org によると、8502ベースと書かれている。 |
|
RAM |
GPLB31Aの資料
によると4288 bytesである。
しかし、 hpcalc.org によると、32 KBとなっている。 |
|
ROM/Flash | GPLB31Aの資料 によるとROM 256Kbytes なので、2005年以降の機種はこの容量かもしれない。 | |
電源 |
2006年版まで CR2032 × 1
2007年版から CR2032 × 2 |
|
プログラミング言語 |
キーストローク言語(max 399 steps)
固定命令が書かれた最初の1stepを除く。 |
|
公式ページ |
(英語)HP 12c Platinum Financial Calculator
(日本語)HP 12c Platinum Financial Calculator |
|
説明書URL |
HP 12c Platinum User's Guide
HP 12c Platinum 金利計算機 ユーザーズガイド |
|
著者の購入年 | 2016年5月 | |
著者の購入価格(購入店) | 8,624円(税込)(Amazon Japan マーケットプレイス) |
1981年に発売された金融電卓 HP 12c の改良版です。
主な変更点は、
本機はRPN電卓ですが、ALGモード(標準方式)が初期設定になっているため、RPNを使うには設定変更が必要です。
「
CFA協会認定証券アナリスト試験
」の
持ち込み可能機種
の1つでもあります。
RPNについては読物コーナーの 「RPN と 4 Level RPN 電卓」 を参照して下さい。
HP 12c Platinum には多くのバージョンがあります。筆者の機種は 2007年の F2231AA のようです。
2005年版以降は電卓機能に変化はないようです。
発売年 | 名称 (型番) | CPU | 電池 | レジスタ数 | ALGモード括弧 | 備考 |
---|---|---|---|---|---|---|
2003 | HP 12c Platinum (F2231A) | SPLB20D2 (6502ベース) | CR2032 × 1 | 41 | なし | 初期型。LCD周辺とキーボードプレートがともに銀色。 |
2005 | HP 12c Platinum (F2232A) | GPLB31A (6502ベース) | CR2032 × 1 | 91 | あり | ALGモードで括弧が使えるようになった。さらに高速化。キーの括弧を除けば外観に変化なし。 |
2006 |
HP 12c Platinum
25th Anniversary Edition |
GPLB31A (6502ベース) | CR2032 × 1 | 91 | あり | 前機種の発売年(1981)から数えて25周年の記念モデル。キーボードプレートが黒色になった。LCD周辺は銀色のまま。 |
2007 | HP 12c Platinum (F2231AA) | GPLB31A (6502ベース) | CR2032 × 2 | 91 | あり | 電池数増加。LCD周辺は銀色。キーボードプレートは黒色。 |
2008 | HP 12c Prestige (F2233A) | GPLB31A (6502ベース) | CR2032 × 2 | 91 | あり | 名称変更。LCD周辺とキーボードプレートがともに金色。 |
前機種の HP 12c は1981年の発売以来改良されながら未だに売られています(2018年1月現在)。大手金融企業の ゴールドマン・サックス は新入社員に対し HP 12c の教育を毎年行なっているとか。本機 HP 12c Platinum はその改良版です。HP 12c から HP 12c Platinum への移行は徐々に進んでいるようですが、Platinum が発売された2003年から長い年月が経過しているのに未だに HP 12c が売られていることを見ると、本機に何か問題があるような気がします。
本機にALGモード(標準方式:普通の電卓に似た入力方式)の搭載が必要だったのでしょうか。[ENTER]キーが数値キーの左側にあり、演算子キーが数値キーの右にある配置はRPNモードでは使いやすいのですが、ALGモードでは使いにくいだけです。
ALGモードのせいで説明書が非常に読みにくくなっています。1つのことを説明するためにALGモードとRPNモードの両方の説明が書かれているからです。さらに本体裏面に印刷されている操作例(画像集参照)は、RPNモードの操作しか書かれていないのに工場出荷時の設定がALGモードになっているのはさすがに変ではないでしょうか。
ALGモードでも4レベルスタックの操作ができるのは奇妙な気がしました。4レベルスタックは
4 Level RPN
を実現するためのものだからです。
ALGモードの場合、スタックは計算結果の履歴として主に使いますが、RPNモードと同様に金融計算の結果が複数の値として返ってくるときの受け皿としても使います。ALGモードでもスタックを操作し、必要な結果を取り出す必要があるのです。
結局のところ、本機のALGモードはRPNモードから完全に脱却していない中途半端な感じです。
時代の流れ的にALGモードの搭載は避けられなかったのかもしれませんが、ALGモードの搭載によって様々な齟齬(そご)が発生している感じが否めません。
本機の後付的なALGモードを使うなら、RPNではない他機種を使っても良いのではないでしょうか。
例えば、Texas Instruments 社の
BA II Plus
を使うという選択肢もあります。
HP 12c シリーズのレジスタとは、数値を格納するもののことです。ユーザーはレジスタに数値を入れて様々な計算を HP 12c シリーズに行わせます。
HP 12c と HP 12c Platinum は複雑なレジスタ体系を有しています。
最初に前機種
HP 12c
の30個のレジスタを見てみましょう。
|
上の図において、1つの四角の中に複数のレジスタが入っていることがあります。それは、複数のレジスタが1つの記憶領域を共用していることを意味します。
例えば、FVとCF20は1つの記憶領域を共用しています。同様にR1とZ1とCF1も1つの記憶領域を共用しています。
つまり、CF20に値を書き込むとFVは上書きされます。同様にCF1に値を書き込むと、R1とZ1が上書きされます。
そのため、どのレジスタがどのレジスタと記憶領域を共用しているのかを暗記して使わないと、レジスタのデータを破壊してしまいます。
このように HP 12c のレジスタは、複数のレジスタが1つの記憶領域を共用していることが多いのです。
初代 HP 12c が発売されたのが1981年ですので、当時の技術ではこのようにして少ないメモリを活用するしかなかったのでしょう。
次に HP 12c Platinum (2005年版以降) の91個のレジスタを見てみましょう。
キャッシュフローレジスタがCF80まで増設されています(初期型はCF30まで)。
これによってキャッシュフローレジスタは60個増設されています(初期型は10個増設)。
さらにFVとCF20が分離されていますので、レジスタが1個増えています。
よって合計で61個のレジスタが増設されたのです(初期型は11個増設)。
FVとCF20が分離されたので、FVとCF20の共用問題は解決されています。
しかし、それを除いては、HP 12c と同様にレジスタの共用関係が維持されています。
おそらくは操作方法とプログラムの互換性維持のためにレジスタの共用関係を解消しなかったのでしょう。
レジスタの内容は電源を切っても維持されます。
HP 12c Prestige と HP 12c Platinum(2007年版)は、電池を2個搭載していますので、電池交換時に電池を1個ずつ交換するとレジスタの内容が維持できます。
電池交換を怠って、電池が完全に切れるとレジスタの内容は消えます。
HP 12c Platinum の金利計算機能は、単利、複利、償却(償還)、割引キャッシュフロー分析(NPV と IRR)、債券、そして減価償却と多岐に渡ります。
その全てをここに書くのは不可能なので、単利と複利と割引キャッシュフロー分析(NPV と IRR)だけの計算例を紹介します。
全ての例は、RPNモードを前提にしています。
ここ を押して、HP 12c Platinum の画像を表示しておくと、理解しやすくなるでしょう。
本機の表示装置は貧弱なため対話的な操作はできません。そのため、かなり操作方法が難しいと感じることでしょう。
小数点以下の表示桁数は2桁とします(デフォルト設定)。
計算例において、答えを出している行の背景を
薄い赤色
にしています。
負数の数値は支払い額を表しています。
(計算例)
500万円を年利5%の単利で借りる場合、2.5年後の経過利息を求める。
さらに2.5年で返済する場合の合計返済予定額を求める。
1年=360日基準で計算すること(金融の計算は1ヶ月=30日、1年=360日で行うことが多い)
キー操作 (RPNモード) | 表示 (Xレジスタ) | 説明 | 備考 |
---|---|---|---|
[f][x><y](CLEAR FIN) | 金融計算レジスタ(n,i,PV,PMT,FV)をクリア | ||
360[ENTER]2.5[×][n] | 900.00 | 2.5年相当の日数(360日基準)をnレジスタに設定 | |
5[i] | 5.00 | 年利5%をiレジスタに設定 | |
500[EEX]4[PV] | 5,000,000.00 | 元金(借りた金)をPVに設定 | |
[f][i](INT) | -625,000.00 | 経過利息(360日基準)を求める。 | このとき、Yに元金、Zに365日基準の経過利息が入っている。 |
[+] | -5,625,000.00 | 合計返済予定額を求める。 | X(経過利息) と Y(元金) を加算 |
本機の主要な機能です。
(計算例)
3,000万円を年利5%の複利で借りたとする。毎月20万円返済する場合、返済期間は何ヶ月なのか。また、借金の合計返済額はいくらになるか。
キー操作 (RPNモード) | 表示 (Xレジスタ) | 説明 | 備考 |
---|---|---|---|
[f][x><y](CLEAR FIN) | 金融計算レジスタ(n,i,PV,PMT,FV)をクリア | ||
5[g][i](12÷) | 0.42 | 年利5%を月利に換算してiに設定 | |
3000[EEX]4[PV] | 30,000,000.00 | 元金をPVに設定 | |
20[CHS][EEX]4[PMT] | -200,000.00 | 月毎の返済額をPMTに設定 | |
[g][8](END) | 変化なし | 支払いモードを月末払いに設定 | |
[n] | 236.00 | 返済に必要な月数(回数)を求める。 | 236ヶ月=19年8ヶ月 |
[FV] | 22,139.92 | 236回支払ったときの将来価値を求める。 | 236回目(最終回)に20万円全額を支払うとこれだけ過分に支払うことになる。 |
[RCL][PMT] | -200,000.00 | 1回分(1ヶ月分)の支払い額を呼出す。 | |
[+] | -177,860.08 | 最終回の端数支払い額 |
22,139.92 + (-200,000.00) = -177,860.08
最終回はこれだけ支払うのが正しい。 |
[STO][0] | 変化なし | R0に最終回の端数支払い額を保存 | |
[RCL][PMT] | -200,000.00 | 1回分(1ヶ月分)の支払い額を呼出す。 | |
[RCL][n]1[-] | 235.00 | 支払い回数から最終回を引いた回数 | |
[×] | -47,000,000.00 | 235回分の支払金額 | -200,000.00 × 235.00 = -47,000,000.00 |
[RCL][0] | -177,860.08 | R0から最終回の端数支払い額を呼出す。 | |
[+] | -47,177,860.08 | 借金の合計返済額 | -47,000,000.00 + (-177,860.08) = -47,177,860.08 |
複利計算の基本は、値を求めたい金融レジスタ(n, i, PV, PMT, FV)に対応するキーを押してその値を求めることです。
上の例でも値を求めたい金融レジスタに対応するキー [n] と [FV] を押したときに複利計算が行われています。
金融レジスタに対応するキー([n] [i] [PV] [PMT] [FV])を押して複利計算をさせることができる状態は限られています。なぜなら、それらのキーを押した場合、通常はXレジスタの値を金融レジスタに設定するという動作になるからです。
では、どういうときに金融レジスタに対応するキーを押せば複利計算ができるのでしょうか?
少なくとも以下の状態で複利計算をすることができます(説明書はこのことを分かり難くしている)。
上述のように最終回の端数支払い額を求めたり、それを考慮して合計返済額を求めるのはかなりの手順が必要です。この電卓は端数や端日数(はにっすう)の処理に手間がかかります。
3,000万円借りただけなのに合計返済額は約4,718万円にもなります。しかも毎月20万円を支払って19年8ヶ月もかかります。
複利でお金を借りるとき、このように返済額が異常に増えることがあります。
返済額を減らすには金利を下げてもらうか、毎回の支払額を増やすしかありません。
償却(Amortization)です。償還とも言います。減価償却(Depreciation)ではありません。
(計算例)
上の複利計算において、2年目終了後の残高を求める。
さらに2年目だけの支払合計(-200,000 × 12 = -2,400,000)において、元金分と利子分を求める。
複利計算で使用した金融計算レジスタ(i, PV, PMT)はそのままにして計算すること。
キー操作 (RPNモード) | 表示 (Xレジスタ) | 説明 | 備考 |
---|---|---|---|
[CLx] | 0.00 | Xレジスタをクリア | |
[n] | 0.00 | n をリセット | |
12[f][n](AMORT) | -1,479,085.85 | 1年目の支払合計の利子分 | |
12[f][n](AMORT) | -1,431,970.12 | 2年目だけの支払合計の利子分 |
この時点でスタックの内容は以下のようになっている。
Z : 2年目だけで償却した回数 Y : 2年目だけの支払合計の元金分 X : 2年目だけの支払合計の利子分 |
[x><y] | -968,029.88 | 2年目だけの支払合計の元金分 | |
[R↓][R↓] | 12.00 | 2年目だけで償却した回数 | この操作は不要だが、例として書いた。 |
[RCL][PV] | 28,111,055.97 | 2年目終了後の残高 | |
[RCL][n] | 24.00 | 償却した合計回数(2年分合計) | この操作は不要だが、例として書いた。 |
このようにして先ほどの複利計算で設定した i, PV, PMT をそのまま利用して償却計算が可能です。
本機の場合、2年目から直接計算することはできません。1年目から順番に行う必要があります。
開始回数の指定ができないからです。ここのところは、
TI BA II Plus
や
CASIO FC-200V
と比べると遅れています。
償却計算を最初からやり直すときは、n をリセットし、PV を手動で元の値に再設定する必要があります。
ここも BA II Plus と FC-200V に比べて遅れているところです(これらの機種では n のリセットも PV の再設定も不要)。
この電卓において、
割引キャッシュフロー(Discounted Cash Flow)分析
とは、キャッシュフローからNPV(正味現在価値)とIRR(内部収益率)を求めることを指しています。投資を分析するために使います。
正味現在価値は割引現在価値と言われることもあります。
NPV(正味現在価値)の定義は以下の通りです。
C
0
〜C
n
がキャッシュフローです。C
0
は投資なので、必ず負数になります。
r が投資で確保したい利率(期待収益率=割引率)です。例えば、5%のとき0.05になります。
この式は将来に得られる予定のキャッシュフローは現在から見て不確実で価値が低いという意味です。そのため、遠い将来のキャッシュフローほど分母の指数が大きくなります。将来のキャッシュフローの価値を
割引いている
のです。
NPVの値が正のときは利益が得られることになります。
IRR(内部収益率)の定義は NPV = 0 にしたときの r のことです。
内部収益率 r が大きい方が投資して利益が出る可能性が高くなります。
(計算例)
5,000万円の不動産を購入して、10%の利回りを確保したいとします。
キャッシュフローの動きは以下のように仮定します。年数1〜4は家賃などの利益です。最後に7,000万円でその不動産を売却します。
このときのNPV(正味現在価値)とIRR(内部収益率)を求めます。
年数 | キャッシュフロー |
---|---|
0 | -50,000,000 |
1 | 6,000,000 |
2 | 5,900,000 |
3 | 5,800,000 |
4 | 5,500,000 |
5 | 70,000,000 |
キー操作 (RPNモード) | 表示 (Xレジスタ) | 説明 | 備考 |
---|---|---|---|
[f][CLx](CLEAR REG) | 全レジスタをクリア | ||
5000[CHS][EEX]4[g][PV](CF0) | -50,000,000.00 | CF0を設定 | 初期投資なので負数 |
600[EEX]4[g][PMT](CFj) | 6,000,000.00 | CF1を設定 | |
590[EEX]4[g][PMT](CFj) | 5,900,000.00 | CF2を設定 | |
580[EEX]4[g][PMT](CFj) | 5,800,000.00 | CF3を設定 | |
550[EEX]4[g][PMT](CFj) | 5,500,000.00 | CF4を設定 | |
7000[EEX]4[g][PMT](CFj) | 70,000,000.00 | CF5を設定 | |
[RCL][n] | 5.00 | キャッシュフローの回数を確認 | |
10[i] | 10.00 | 利率 10% を iレジスタに設定 | |
[f][PV](NPV) | 11,909,270.98 | NPVを求める。 | |
[f][FV](IRR) | 15.80 | IRRを求める。単位は%。 | iレジスタはこの値で上書きされるので、要注意。 |
NPV(正味現在価値)が約1,191万円ですので、利益が出ることになります。
IRR(内部収益率)は15.8%です。目標の利回り10%を越えていますので、投資して利益が出る可能性があります。
書込み時:(j-1) [n] (書込む値) [g] [PMT](CFj) → 操作後、n が +1 されます。そのため、上のように連続書込みが可能です。
読出し時:j [n] [RCL] [g] [PMT](CFj) → 操作後、n が -1 されます。
以上のように金融計算の例を4つだけ示しましたが、対話的な操作ができないので、使用者が一方的に操作する必要があります。当然のことながら操作難易度は高くなります。
本機はキーストローク言語の一種を使用しています。キーストローク言語とはキーを押した手順を再生するような言語です。
ただし、本機では分岐命令やジャンプ命令も使用可能ですので、キー手順の再生以上のことも可能です。
例えば、RPNモードにおいて、Xレジスタに入力した金額を8%の税込みの金額にするプログラムは以下のようになります。
左の数値が行番号、右の数値が命令です。
001, 36
002, 1
003, 48
004, 0
005, 8
006, 20
このプログラムが意味するところは、[ENTER][1][.][0][8][×]という意味です。Xレジスタに1.08をかけているだけです。
プログラミングの制限は多いと言えます。
最も制限に感じるのは、ジャンプ命令の飛び先が行番号でしか指定できないことです。そのため、プログラムを修正する度にジャンプ命令の修正が必要になる可能性が高いのです。
コード挿入機能はありませんので、コードを挿入したいときは、挿入箇所から後ろを全て入力し直す必要があります。
そのため、説明書は
紙上でコーディング
してからプログラムを入力することを推奨しています。
このように非常に原始的なプログラミング言語なのです。
基本的には、プログラムを複数保存する機能はありません。
ところが、説明書は各プログラムの終端に「0行目にジャンプする命令」を書いて、複数のプログラムを共存できるとしています。
0行目はユーザーが書込みできないのですが、停止命令が固定で書かれており、0行目にジャンプすることによってプログラムを終了できるのです。
この機能を利用して、「0行目にジャンプする命令」の後ろに2つ目のプログラムを書くことができます。2つ目のプログラムを実行するときは、[g][R↓](GTO)を押してからそのプログラムの開始行番号を3桁の数値(必ず3桁必要。例えば、8行目なら008)で指定してから[R/S]キーを押すと実行できます。同様に3つ、4つとプログラムを追加できます。
しかし、行番号を覚えておく必要がありますし、1つのプログラムを修正したら他のプログラムも修正しないといけなくなる可能性が高いのです。
このようにかなり不便なプログラミング機能です。HP 12c との互換性を優先したのでしょう。
そのため、プログラムステップ数の増大(99 steps → 399 steps)にあまり意味がないのです。
前述のようにコード修正が大変ですので、長いコードを書くのは大変です。しかもプログラムを外部に出力することすらできません。このようなプログラミング仕様でプログラムステップ数だけ増えても意味がないと思うのですが。
前機種の HP 12c から本機 HP 12c Platinum への移行に非常に長い時間がかかっています。
急いで買い替えたくなるような利点がなかったとも言えるでしょう。
ALGモードの追加、レジスタ数の増加、そしてプログラムステップ数の増大は、急いで買い替えたくなるような利点とは言えないでしょう。
明らかに良いところといえば、高速化だけでしょう。 しかし、HP 12c も2008年版(F2230A)からCPUが ARM7TDMI に変わって本機よりも高速化しています。そのため、現在では速度性能的にも利点がなくなっています。
私見ですが、HP 12c との互換性を諦めてレジスタの共用関係を解消すれば、かなり使いやすくなり、買い替える利点もできたかもしれません。互換性を外すのは勇気がいるので、難しいとは思いますが。
本機のハードウェアはなかなか良い作りだと思います。キータッチはクリック感が強くて良好です。キーとキーの間の間隔も適度に離れていて押し間違えにくくなっています。本体の大きさは小型の部類なのですが、キーボードが押しにくいということはありません。
ところで、一般の人に本機が勧められるかというと、あまりお勧めできません。表示装置が貧弱なので対話的な操作ができないのです。そのため、レジスタに値を設定して、特定のボタンを押すと計算が始まるという操作になっています。つまり、操作する人間が全てを覚えていないと使えないのです。プログラミング機能も古くて原始的です。そのため、本機を使うには相当な訓練が必要です。
日本語版説明書(Editon 5)の完成度が低いことも本機を勧めにくい一因です(付属CD-ROMに収録)。
例えば、「〜ページを参照」の〜の部分が消えているところが多くあります(参照になっていない)。「債券利回り」の説明が何故か2回書かれていて、その中の最初の1つでありえない操作をしています。他にも誤植が多いので、英語版説明書を併読しないと安心して読めないのです。
また説明書がアメリカの金融制度を前提にして書かれており、アメリカと日本の金融制度の違いを理解していないと金融電卓として使いこなすのは難しいでしょう。
そういう私も金融の知識はあまりないので、本機の金融計算機能は使っていなくて、RPN入力ができる一般電卓として使っています。日本の一般電卓より機能が多くて便利です。日本の一般電卓だと%ボタンが1つしかなくて状況によって意味が変わるので分かりにくいのですが、HP 12c Platinum だと「全体に対する%」「差分の%」「通常の%」がそれぞれ別ボタンになっていて使いやすくなっています。カレンダー計算も便利です。日付のフォーマットが独特で最初は慣れないのですが、何年何月何日と何年何月何日の差は何日あるとかが計算できて計画を建てる時に使えます(うるう年も考慮してくれる)。自然対数、逆数、指数も使えます。
とは言っても安いものでもないので、基本的にはCFA協会認定証券アナリスト試験を受けたり、金融計算をする人が買うものなのでしょう。私の場合は 4 Level RPN が使ってみたくて買っただけです。今にして思えば、関数電卓の HP 35s でも良かった気もします。