begin get prices over time
This commit is contained in:
+20
-3
@@ -1,7 +1,7 @@
|
||||
import Header from './Header';
|
||||
import { HistoricalImpliedVolatilityChart } from "./HistoricalImpliedVolatilityChart";
|
||||
import { Picker } from './Picker';
|
||||
import { atom as $ } from 'jotai';
|
||||
import { atom as $, useAtomValue } from 'jotai';
|
||||
//import './index.css';
|
||||
//@ts-ignore
|
||||
import k from './App.module.css';
|
||||
@@ -22,19 +22,36 @@ const $selectedStrike = $('');
|
||||
|
||||
const $frontMonthExpirationPickerUrl = $((get) => `${baseUrl}/option_quotes/${get($selectedUnderlying)}/${get($selectedQuoteDate)}/expirations`);
|
||||
const $isFrontMonthExpirationPickerEnabled = $((get) => get($selectedQuoteDate)!=='' && get($selectedUnderlying)!=='');
|
||||
const $selectedFrontExpiration = $('');
|
||||
|
||||
const $backMonthExpirationPickerUrl = $((get) => `${baseUrl}/option_quotes/${get($selectedUnderlying)}/${get($selectedQuoteDate)}/expirations`);
|
||||
const $isBackMonthExpirationPickerEnabled = $((get) => get($selectedQuoteDate)!=='' && get($selectedUnderlying)!=='');
|
||||
const $selectedBackExpiration = $('');
|
||||
|
||||
const $prices = $((get)=>{
|
||||
const selectedUnderlying = get($selectedUnderlying);
|
||||
const selectedStrike = get($selectedStrike);
|
||||
const selectedFrontExpiration = get($selectedFrontExpiration);
|
||||
const selectedBackExpiration = get($selectedBackExpiration);
|
||||
if(selectedUnderlying!=='' && selectedStrike!=='' && selectedFrontExpiration!=='' && selectedBackExpiration!==''){
|
||||
return fetch(`${baseUrl}/option_quotes/${selectedUnderlying}/${selectedStrike}/${selectedFrontExpiration}/${selectedBackExpiration}`).then(x=>x.json()).catch(()=>[]);
|
||||
}
|
||||
else{
|
||||
return Promise.resolve([]);
|
||||
}
|
||||
});
|
||||
|
||||
function App() {
|
||||
const prices = useAtomValue($prices);
|
||||
|
||||
return (
|
||||
<div className={k.app}>
|
||||
<Header />
|
||||
<div className={k.picker}><label>Underlying</label><Picker $url={$underlyingsUrl} $selectedOption={$selectedUnderlying} /></div>
|
||||
<div className={k.picker}><label>Quote Date</label><Picker $url={$quoteDatePickerUrl} $isEnabled={$isQuoteDatePickerEnabled} $selectedOption={$selectedQuoteDate}/></div>
|
||||
<div className={k.picker}><label>Strike</label><Picker $url={$strikePickerUrl} $isEnabled={$isStrikePickerEnabled} $selectedOption={$selectedStrike}/></div>
|
||||
<div className={k.picker}><label>Front Expiration</label><Picker $url={$frontMonthExpirationPickerUrl} $isEnabled={$isFrontMonthExpirationPickerEnabled} /></div>
|
||||
<div className={k.picker}><label>Back Expiration</label><Picker $url={$backMonthExpirationPickerUrl} $isEnabled={$isBackMonthExpirationPickerEnabled} /></div>
|
||||
<div className={k.picker}><label>Front Expiration</label><Picker $url={$frontMonthExpirationPickerUrl} $isEnabled={$isFrontMonthExpirationPickerEnabled} $selectedOption={$selectedFrontExpiration} /></div>
|
||||
<div className={k.picker}><label>Back Expiration</label><Picker $url={$backMonthExpirationPickerUrl} $isEnabled={$isBackMonthExpirationPickerEnabled} $selectedOption={$selectedBackExpiration} /></div>
|
||||
<HistoricalImpliedVolatilityChart />
|
||||
</div>
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user