SEDOLチェックディジット
本体B0YBKJのチェックディジットは7で、完全なSEDOLはB0YBKJ7です。6文字の本体ならどれでもこの数字を計算し、完全なコードも検証するので、1文字の打ち間違いの多くを見つけられます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- コード
- B0YBKJ
- 計算モード
- Compute
- 入力
- B0YBKJ
- チェックディジット
- 7
- チェックディジット付き
- B0YBKJ7
Stock Exchange Daily Official List(SEDOL)コードは、上場証券を6文字の本体と1桁のチェックディジットからなる7文字の短い文字列で識別します。末尾の桁は乱数ではなく、7位置すべての加重和が10で割り切れるように選ばれ、画面・PDF・相手方ファイルから再入力する際の1文字の誤記を多く検出します。本機能は標準重み1・3・1・7・3・9を用い、有効な6文字本体の公式SEDOLチェックディジットを計算するか、7文字の完全なSEDOLを検証して格納桁と再計算値が一致するかを報告します。
SEDOLチェックディジットの計算方法
SEDOL本体は、数字0〜9とラテン字母の子音から成るちょうど6文字です。文字は10〜35の値に対応し(Aは10、Bは11、Zは35)、数字はそのままの値を保ちます。公式のSEDOL慣行では、通常の単語にならないよう母音A・E・I・O・Uを本体に置きませんが、Yは子音として許可されます。
6位置それぞれに、重み列1・3・1・7・3・9の固定重みを掛けます。6個の積を合計し、合計を10で割った余りを求め、チェックディジットは10からその余りを引いた値(再び10で割った余り)で、余り0ならチェックディジットは0になります。この1桁を付けると、全体の加重寄与が10の倍数となる7文字のSEDOLになります。
本ツールはその標準手順のみを実装し、独自変種でもISIN複合チェックサムでもCUSIP方式でもありません。応答では1文字のチェックディジット文字列、桁を付けた完全コード、または本体だけから再計算した期待チェックディジット付きの真偽フラグを返します。アルゴリズム名は常に sedol と示し、下流システムがどの方式で識別子を保護したかを記録できます。
重みと値対応を知っていれば相手方ファイルの不整合を切り分けやすく、2システムで桁が食い違う場合は、ほぼ必ず一方が誤った重みを使うか、母音を有効な本体として扱っています。
実際の業務フローでのSEDOLチェックディジットの位置づけ
セキュリティマスターや参照データ担当は、取引所ファイル・ベンダー・社内表からSEDOL列を読み込みます。ハンディ端末やコピー&ペーストでの1文字誤記はよくあり、チェックディジットは誤った銘柄へ行が結び付く前に多くの1位置エラーを捉えます。
ミドルオフィスとオペレーションは決済例外レポートの各SEDOLについて期待桁を再計算し、格納された完全コードが一致しなくなった行を隔離し、人手編集と生成器のオフバイワン双方を表面化します。LuhnやISBNのチェックディジット機能を既に出す製品でも、検索意図と文字規則が違うなら本SEDOL専用機能を採用できます。
SEDOLは一般のmod10口座方式でもISBN配置でもありません。どのフローでも契約は同じです。合格したSEDOL検査を上場・所有・取引権限の証明と見なさないでください。
文字列が本アルゴリズム下で整形式であることだけを示し、任意のチェックサムと同じ誠実さの基準です。
活用例
セキュリティマスターのSEDOL列を監査する
セキュリティマスターや決済例外抽出の各SEDOLを一括検証し、チェックディジットが再計算した期待値と一致しなくなった行を隔離します。
よくある質問
SEDOLチェックディジットとは何ですか?
6文字本体に対し重み1・3・1・7・3・9で計算する末尾1桁で、7文字SEDOLの加重和が10の倍数になるようにし、多くの1文字誤記を検出します。
なぜ母音が拒否されるのですか?
公式SEDOL慣行では通常の単語を避けるため本体にA・E・I・O・Uを置きません。
SEDOLのチェックディジットはどう計算しますか?
本体の各文字に値を割り当てます。数字はそのまま、英字はAの10からZの35までです。それぞれに1、3、1、7、3、9を掛けて合計し、合計を10の倍数にする数字がチェックディジットです。B0YBKJなら7です。
完全なSEDOLを検証するには?
検証を選び、7文字のコードを貼り付けます。最初の6文字からチェックディジットを計算し直して最後の1文字と比べ、一致するかどうかと、本来あるべき数字を表示します。
空白やハイフン、小文字を含むコードも貼り付けられますか?
はい。検証の前に空白とハイフンを取り除き、英字を大文字にそろえます。表計算ソフトやPDFからコピーしたコードにもそのまま使えますが、母音やほかの記号は受け付けません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/enc/sedol \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"code":"B0YBKJ"}'const res = await fetch("https://api.kit.forhosting.com/enc/sedol", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"code": "B0YBKJ"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/sedol",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"code": "B0YBKJ"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/sedol", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"code":"B0YBKJ"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"code":"B0YBKJ"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/sedol", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"code": "B0YBKJ"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.sedol",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
母音やSEDOL以外の文字は、黙って書き換えず invalid_input で明確に拒否します。ブラウザでは無料、公開価格でKIT APIも利用でき、どちらもネットワークなし・識別子の保存なしの同一の純粋算術です。
チェックディジットの計算と完全SEDOLの検証手順
検証前に空白とハイフンを除去し大文字に揃えます。これは表計算の書き出しやPDF抽出での表記に合わせています。validate モードは0〜9の桁で終わる7文字コードを想定します。空文字、code欠落、モードに対する長さ不正、本体内の母音、不正な mode は加重和の前に失敗し課金されません。データベンダーから本体を完成させるときは compute、利用者・相手方ファイル・スキャン一覧から完全SEDOLを受け取り銘柄照会前に真偽判定が必要なときは validate を選んでください。code フィールドに6文字本体または7文字の完全SEDOLを送ってください。既定は compute モードで、正規化後ちょうど6文字を要求し、母音や非英数字は invalid_input で拒否し、check_digit を1文字の文字列、with_check を本体+桁として返します。末尾桁が再計算値と一致すると valid が true になり、常に check_digit・expected_check_digit・末尾を除く6文字の payload を含めます。この形なら運用フォームで「入力はX、期待はY」を再呼び出しなしで示せます。時計・乱数・ネットワークのない純粋な parse のため、同じ入力は無料ブラウザとAPIで常に同じJSONになります。成功リクエストあたり$0.002で、セキュリティマスター一括取込、トレードブロッター修正、ミドルオフィス例外キューを特別料金なしで守れます。
実際の業務フローでのSEDOLチェックディジットの位置づけ
利用者入力の証券識別子を受け付けるポートフォリオ・リスク系は、フォーム境界で validate を呼び valid が false なら照会を止め、expected_check_digit を示してチケットなしで1桁の誤記を直せます。
連携の活用例
ベンダーフィードからSEDOL本体を完成させる
取引所またはベンダーファイルの6文字本体を受け取り、compute モードを呼び出して with_check を保存し、下流公開前に各銘柄行が7文字の完全SEDOLを持つようにします。
入力時に手入力・取込SEDOLを検証する
利用者または相手方ファイルが完全SEDOLを送ったら validate モードを呼び、valid が false なら照会を止め、expected_check_digit を示して1文字の誤記修正を助けます。
技術的な質問
このAPIでSEDOLチェックディジットを計算するには?
code に6文字本体、mode に compute(または mode 省略)でPOSTします。応答に check_digit と with_check(本体+チェックディジット)が含まれます。
7文字の完全SEDOLを検証するには?
7文字の完全文字列と mode validate でPOSTします。応答に valid・check_digit・expected_check_digit・末尾を除く payload が含まれます。
SEDOLチェックディジットツールは無料ですか?
ブラウザツールは無料でローカル実行です。API呼び出しは公開の基本価格$0.002の前払いKIT残高を使い、無効入力は課金されません。