Tour de Whirlpool
Tour de Whirlpool とは?
Orca は Solana 上のトレーディング・プラットフォームです。
Tour de Whirlpool は Orca の集中流動性 AMM である Whirlpool を typescript の SDK を通して利用するためのチュートリアルです。
すべて Devnet で行えるチュートリアルのため、メインネットでお金を使う必要もなく、税金面での厄介事も発生しません。
プログラムからスワップしてみたいが、そもそも Devnet にプログラムがあるのかわからない、トークンは何を使えばいいのか・・・そんな悩みがある場合にもお役に立つと思います。
このチュートリアルを学ぶことで、以下の操作をプログラムから行えるようになります。Whirlpool の操作に入る前に、基本的なウォレットの操作として残高確認やトークン送信なども扱っています。
SOLとトークンの残高確認
SOLとトークンの送金
トークンのスワップ
Whirlpoolのポジション管理
ポジションのオープン
ポジションの一覧取得
ポジションの状態確認
ポジションへの流動性追加
ポジションからの流動性引き出し
ポジションからの手数料とリワードの回収
ポジションのクローズ
想定読者
Solana と Orca の Whirlpool を画面から利用した経験がある
typescript によるコーディングの経験がある
(または適応できる他言語の経験がある)
環境前提
利用するプログラミング言語は typescript です
実行環境は node.js です
ウォレットの管理に Phantom を使用します
ウォレットの管理に Solana CLI を併用します
Devnet を使います(費用はかかりません)
必要なトークンはすべてチュートリアル内で入手できます
ソースコード
チュートリアル内のソースコードは全てこちらに登録されています。
https://github.com/everlastingsong/tour-de-whirlpool/tree/main/src/JP
困った時には
Orca の Discord にぜひ参加してください。
#dev -questions チャネルで開発者を支援しています。
チュートリアル
準備
ウォレットの基本操作
ウォレットの基本操作(残高確認)
ウォレットの基本操作(送信)
スワップ
ポジション管理
ポジションのオープン
ポジションの一覧取得・状態表示
ポジションへの流動性追加
ポジションからの流動性引き出し
ポジションから手数料と報酬を回収
ポジションのクローズ
補足
コード提供のみ
https://github.com/everlastingsong/tour-de-whirlpool/tree/main/src/JP
PositionBundle: 09x
WhirlpoolRouter: 10x
リファレンス
Developer Portal
Whirlpool のコンセプトや SDK の利用方法が解説されています(英語)
エラーの一覧
Whirlpool を使う中で発生したエラーコードを調べることができます
6000(0x1770)以上のエラーは Whirlpool 固有のエラー
6000(0x1770)未満のエラーは Anchor や Solana のエラー
SDK のリファレンス (TypeDoc)
Whirlpool のソースコード
Whirlpool はオープンソースのソフトウェアです。
SDK やオンチェーンのプログラムの詳細・実装を確認することができます。