# Vault Period

The `VaultPeriod` holds the average price data for a `Vault` as well as the drip reduce amount once that period is finished (each position will contribute to the drip reduce amount on their position expiry period).  This account has the following PDA:

```rust
seeds = [
    b"vault_period".as_ref(),
    vault.key().as_ref(),
    params.period_id.to_string().as_bytes()
],

```

```rust
pub struct VaultPeriod {
    // Account relations
    pub vault: Pubkey, // 32

    // Data
    // The period index/offset from the genesis period of the vault (0, 1, ...)
    pub period_id: u64, // 8
    // Drip amount to reduce at this period
    pub dar: u64, // 8
    // Time weighted average price of asset A expressed in asset B from period 1 to this period
    pub twap: u128, // 16
    // Timestamp for the drip
    pub drip_timestamp: i64, //8
    // Bump
    pub bump: u8, // 1
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.dcaf.so/products/drip/programming-model/vault-period.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
