Hello! I am brand new to smart contracts, ERC20, and Crowdsales (a normie trying to get into crypto). I want to conduct a Crowdsale where 1 TKN would be worth one dollar (USD) in Ether. I saw the OpenZeppelin post about Crowdsales describing how this could be possible with the following math:

- assume 1 ETH == $400
- therefore, 10^18 wei = $400
- therefore, 1 USD is
`10^18 / 400`

, or`2.5 * 10^15 wei`

- we have a decimals of 18, so we’ll use
`10 ^ 18 TKNbits`

instead of`1 TKN`

- therefore, if the participant sends the crowdsale
`2.5 * 10^15 wei`

we should give them`10 ^ 18 TKNbits`

- therefore the rate is
`2.5 * 10^15 wei === 10^18 TKNbits`

, or`1 wei = 400 TKNbits`

- therefore, our rate is
`400`

However, what happens if the value of ETH changes from $400 throughout the time period of Crowdsale. How could I code my rate so that if the value of ETH fluctuates throughout the Crowdsale, that I would still be receiving 1 USD for each TKN? The reason I would like to know this is because I want to do a Crowdsale to help raise funds, and use those funds to buy a physical collectible, and have those who bought the TKN to become the owners of the collectible.

I was also wondering what kind of fees are associated with conducting a Crowdsale?

Thanks a lot, looking forward to being an active member here