> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ranger.finance/llms.txt
> Use this file to discover all available pages before exploring further.

# Strategy Setup Guide

> Set up strategies to deploy vault funds to DeFi protocols

After creating your vault, strategy setup is a two-step process:

1. add the adaptor to the vault
2. initialize each strategy you want to deploy to

<Warning>
  Vault creation does not initialize any strategies. Until this step is complete, deposits remain idle.
</Warning>

## Concepts

* **Adaptor**: an on-chain program that knows how to talk to a category of protocols
* **Strategy**: a specific target inside that adaptor, such as one market, vault, or counterparty

## Add The Adaptor

```typescript theme={null}
import { getAddAdaptorInstructionAsync } from "@voltr/vault-sdk";

const addAdaptorIx = await getAddAdaptorInstructionAsync({
  payer: adminSigner,
  admin: adminSigner.address,
  vault: vaultAddress,
  adaptorProgram: adaptorProgramAddress,
});
```

## Initialize The Strategy

```typescript theme={null}
import { getInitializeStrategyInstructionAsync } from "@voltr/vault-sdk";

const initStrategyIx = await getInitializeStrategyInstructionAsync({
  payer: adminSigner,
  manager: managerAddress,
  vault: vaultAddress,
  strategy: strategyAddress,
  adaptorProgram: adaptorProgramAddress,
  instructionDiscriminator,
  additionalArgs: new Uint8Array(),
  remainingAccounts: [
    // protocol-specific accounts
  ],
});
```

## Use The Script Repos As Source Of Truth

The exact `strategy`, discriminator, and remaining accounts are adaptor-specific. Use the maintained repositories for working examples:

| Protocol / Adaptor | Initialization Repos                                                                                                                                                                                                                  |
| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Kamino Adaptor     | [Kamino Vault](https://github.com/voltrxyz/kamino-scripts/blob/main/src/scripts/manager-initialize-kvault.ts), [Kamino Lending Market](https://github.com/voltrxyz/kamino-scripts/blob/main/src/scripts/manager-initialize-market.ts) |
| Drift Adaptor      | [Drift Lend](https://github.com/voltrxyz/drift-scripts/blob/main/src/scripts/manager-init-earn.ts), [Drift Perps](https://github.com/voltrxyz/drift-scripts/blob/main/src/scripts/manager-init-user.ts)                               |
| Jupiter Adaptor    | [Spot via Jupiter Swap](https://github.com/voltrxyz/spot-scripts/blob/main/src/scripts/manager-initialize-spot.ts), [Jupiter Lend](https://github.com/voltrxyz/spot-scripts/blob/main/src/scripts/manager-initialize-earn.ts)         |
| Trustful Adaptor   | [Centralised Exchanges](https://github.com/voltrxyz/trustful-scripts/blob/main/src/scripts/manager-initialize-arbitrary.ts)                                                                                                           |
