currencies-and-fx について
currencies-and-fxは、為替レートや外貨エクスポージャーを分析する投資家向けのファイナンシャルプランニング用スキルです。直物・先物レート、金利平価、クロスレート、キャリートレード、為替ヘッジを扱い、実行可能な計算デモも含みます。
主な機能
- 01直物・先物為替レートの計算
- 02CIPとUIPの概念解説
- 03クロスレートの算出
- 04為替ヘッジコストの分析
- 05キャリートレードのリスク解説
活用シーン
- 01通貨の先物レートを計算
- 022通貨間のクロスレートを算出
- 03国際資産のヘッジコストを推定
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ joellewis/ finance_skills --skill currencies-and-fxインストール後、Claude Code で/currencies-and-fxを入力して読み込まれたか確認します。
同梱ファイルscripts/currencies_and_fx.py
詳細
通貨と為替
基本概念
スポットレート
即時受け渡し(T+2 決済)を前提とした、ある通貨を別の通貨で表した価格です。表示慣行では、EUR/USD = 1.10 は、1 ユーロが 1.10 米ドルであることを意味します。一部の通貨ペアは、1 ドル当たりの外貨単位数(USD/JPY = 150)で表示され、ほかの通貨ペアは、外貨 1 単位当たりのドル数(EUR/USD = 1.10、GBP/USD = 1.27)で表示されます。
フォワードレート
将来の通貨取引について合意する為替レートです。2 つの通貨の金利差によって決まります。フォワードレートは将来のスポットレートを予測するものではなく、キャリーコストを反映した、裁定によって決まる価格です。
カバー付き金利平価(CIP)
成立しなければならない裁定条件であり、実証的にもほぼ成立しています。
F/S = (1 + r_d) / (1 + r_f)
ここで、F = フォワードレート、S = スポットレート、r_d = 国内金利、r_f = 外国金利(いずれも同じ期間)です。CIP が成立しない場合、ある通貨で借り入れ、別の通貨に両替して運用し、フォワードでリターンを確定することで、リスクのない裁定取引が可能になります。
カバーなし金利平価(UIP)
理論上の条件であり、裁定によって強制されるものではありません。
E(S_t) / S_0 = (1 + r_d) / (1 + r_f)
UIP は、予想される将来のスポットレートが金利差を相殺するように調整されると予測します。実証的な裏付けは弱く、UIP の予測とは逆に、高金利通貨は下落するのではなく上昇する傾向があります。このため、キャリートレードが利益を生むことがあります。
フォワードプレミアム/ディスカウント
フォワードプレミアム = (F - S) / S = (r_d - r_f) / (1 + r_f)
国内金利が外国金利を上回る場合、フォワードレートはスポットレートに対してプレミアムとなります(外国通貨のフォワード価格が高くなります)。国内金利が低い場合、フォワードはディスカウントとなります。
キャリートレード
低金利通貨で借り入れ、高金利通貨で運用し、金利差から利益を得る取引です。UIP が成立しない場合(つまり、高金利通貨が金利差を相殺するほど下落しない場合)に利益が生じます。キャリートレードは平均するとプラスのリターンを示しますが、テールリスクが大きく、リスク回避局面で急に巻き戻されると大きな損失が生じることがあります(負の歪度、ファットテール)。
クロスレート
共通する第三の通貨に対するレートを使って、2 つの通貨間の為替レートを算出します。
EUR/GBP = (EUR/USD) / (GBP/USD)
たとえば、EUR/USD = 1.10、GBP/USD = 1.27 の場合、EUR/GBP = 1.10 / 1.27 = 0.8661 です。
通貨ヘッジ
フォワード契約を使って、国際投資に伴う為替リスクを排除します。ユーロ建て資産を保有する米国の投資家は、ユーロをフォワードで売却し、換算レートを固定できます。ヘッジコストは、2 つの通貨の金利差と等しくなります(CIP に基づく)。国内金利が外国金利を上回る場合、ヘッジはプラスのリターンを生みます。下回る場合はコストが発生します。
実質為替レート
名目為替レートを相対的な物価水準に合わせて調整したものです。
実質レート = 名目レート × (外国の物価水準 / 国内の物価水準)
実質為替レートの変化は、競争力の変化を反映します。実質レートが上昇すると、国内財は外国財と比べて割高になります。
購買力平価(PPP)
為替レートの長期的な基準です。PPP では、同一の商品が国を問わず同じ価格になるよう、為替レートが調整されると考えます。実証的には、PPP は短期ではほとんど成立しませんが、数十年単位では適正価値を判断する妥当な指針となります。PPP からの乖離は何年も続くことがあります。
通貨オーバーレイ
国際ポートフォリオに対する体系的なヘッジプログラムで、基礎となる資産配分とは別に運用されます。オーバーレイ運用者はヘッジ比率(例:外国エクスポージャーの 50%をヘッジ)を設定し、バリュエーション、キャリー、モメンタムのシグナルに基づいて戦術的な調整を行うこともあります。
主な公式
| 公式 | 式 | 使用例 |
|---|---|---|
| CIP フォワードレート | F = S × (1+r_d)/(1+r_f) | 裁定によって決まるフォワードレート |
| UIP 期待スポットレート | E(S_t) = S_0 × (1+r_d)/(1+r_f) | 理論上の将来スポットレート |
| フォワードプレミアム | (F-S)/S = (r_d-r_f)/(1+r_f) | フォワードとスポットの差 |
| クロスレート | A/B = (A/C) / (B/C) | 共通通貨から算出 |
| 実質為替レート | q = e × (P*/P) | 競争力の指標 |
| ヘッジコスト | ≈ r_d - r_f (年率換算) | 為替エクスポージャーのヘッジコスト |
計算例
例 1:フォワードレートの計算
与件: USD/JPY スポットレート = 150、米国の1年金利 = 5%、日本の1年金利 = 0.5% 計算: 1年物フォワードレート 解答: F = S × (1 + r_JPY) / (1 + r_USD) F = 150 × (1 + 0.005) / (1 + 0.05) F = 150 × 1.005 / 1.05 F = 150 × 0.95714 = 143.57
フォワードレートは 143.57 JPY/USD です。日本の金利が低いため、円はフォワードプレミアムとなっています(フォワードでは、スポットよりもドルあたりの円の額が少なくなります)。円建て資産をドルにヘッジする米国の投資家は、この有利なフォワードレートを受け取り、実質的に金利差を得られます。
例 2:EUR 投資家のヘッジコスト
与件: EUR/USD スポットレート = 1.10、EUR の1年金利 = 3%、USD の1年金利 = 5% 計算: USD エクスポージャーを EUR に戻すヘッジの年間コスト/利益 解答: フォワードレート:F = 1.10 × (1.03)/(1.05) = 1.10 × 0.98095 = 1.0790
USD 建て資産をヘッジする EUR 投資家は、1.0790 EUR/USD で USD をフォワード売りします。 ヘッジ利益 = (S - F) / S = (1.10 - 1.079) / 1.10 = 1.91%
EUR 金利(3%)が USD 金利(5%)より低いため、EUR 投資家は約2%のプラスのヘッジリターン(金利差)を得られます。EUR 投資家にとって、USD 建て資産のヘッジ後リターンは、USD のリターンにヘッジによる約2%を加えたものです。
よくある落とし穴
- 通貨の表示慣行 — EUR/USD と USD/JPY では表示慣行が逆です。どちらの通貨が基準通貨で、どちらが決済通貨なのか、必ず確認してください
- 名目金利差と実質金利差の混同 — CIP では名目金利を使います。実質金利差は実質為替レートに異なる形で影響します
- キャリートレードの急落リスク — キャリー戦略は負の歪度とファットテールを示します。利益はゆっくり積み上がる一方、損失は突然かつ深刻になることがあります
- CIP は裁定によって成立しますが、UIP は実証的にはしばしば成立しない理論です — フォワードレートが将来のスポットレートを予測すると仮定しないでください
相互参照
- historical-risk(wealth-management プラグイン):複数通貨ポートフォリオのリターン測定
- equities(wealth-management プラグイン):国際株式投資と通貨の影響
- fixed-income-sovereign(wealth-management プラグイン):国際債券投資と金利差
- asset-allocation(wealth-management プラグイン):ポートフォリオにおける通貨ヘッジの判断
スクリプトの実行
uv run scripts/currencies_and_fx.py # run the demo (uses PEP 723 inline deps)
uv run scripts/currencies_and_fx.py --verify # check demo outputs against the worked examples (exit 1 on mismatch)
python3 scripts/currencies_and_fx.py # alternative (stdlib only, no installs needed)
デモでは、上記の計算例を出力します。値はこのスキルの計算例と一致します。クラスと関数の一覧を表示するには、--help を実行してください。プログラムから使用する場合は、スクリプトを実行するのではなく、モジュールをインポートしてください。デモが実行されるのは python currencies_and_fx.py の場合のみです。