> For the complete documentation index, see [llms.txt](https://dev.bondprotocol.finance/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dev.bondprotocol.finance/smart-contracts/option-system/options-liquidity-mining-olm/manual-strike-olm.md).

# Manual Strike OLM

[Git Source](https://github.com/Bond-Protocol/option-contracts/blob/master/src/fixed-strike/liquidity-mining/OLM.sol)

**Inherits:** [OLM](/smart-contracts/option-system/options-liquidity-mining-olm.md)

*The Manual Strike OLM contract allows the owner to manually set the strike price that new option tokens are created with on epoch transition.*

### State Variables

#### strikePrice

Strike price to be used for new option tokens

```solidity
uint256 public strikePrice;
```

### Functions

#### \_initialize

Internal function, not callable directly. Called within `initialize` to implement Manual Strike OLM specific initialization logic.

```solidity
function _initialize(bytes calldata params_) internal override;
```

**Parameters**

| Name          | Type      | Description                                                                            |
| ------------- | --------- | -------------------------------------------------------------------------------------- |
| strikePrice\_ | `uint256` | The initial strike price for the  Manual Strike OLM, in quote tokens per payout token. |

**The parameters for this function are ABI-encoded into a** `bytes` **object and passed as the** `other_`**variable into the top-level OLM** `initialize` **function. For example:**

```solidity
bytes memory other = abi.encode(strikePrice);
```

#### nextStrikePrice

Returns the strike price that would be used if a new epoch started right now

```solidity
function nextStrikePrice() public view override returns (uint256);
```

#### setStrikePrice

Set the strike price to be used for future option tokens

Only owner

```solidity
function setStrikePrice(uint256 strikePrice_) external onlyOwner requireInitialized;
```

**Parameters**

| Name           | Type      | Description                                                                                          |
| -------------- | --------- | ---------------------------------------------------------------------------------------------------- |
| `strikePrice_` | `uint256` | Strike price for the option tokens formatted as the number of quote tokens required per payout token |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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://dev.bondprotocol.finance/smart-contracts/option-system/options-liquidity-mining-olm/manual-strike-olm.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.
