Options Calculator

{#each prebuiltStrategy as strategy}
changeStrategy(strategy)} class="{selectedStrategy === strategy?.name ? 'bg-blue-100 dark:bg-white text-muted ' : 'text-blue-700 dark:text-white dark:sm:hover:text-white sm:hover:text-muted'} text-sm select-none flex items-center space-x-2 border border-gray-300 dark:border-gray-600 rounded-full px-3 py-1 cursor-pointer" > {strategy.name} {#if strategy?.sentiment} {strategy.sentiment} {/if}
{/each}

{selectedStrategy}

{description}

{#if isLoaded && config}
{#if inputValue?.length !== 0 && inputValue !== selectedTicker} {#each searchBarData as searchItem} changeTicker(searchItem)} >
{searchItem?.symbol} {searchItem?.name}
{:else} No results found {/each}
{/if}
{#each userStrategy as item, index} {/each}
Ticker Action Quantity Expiration Date Strike Type Price
{selectedTicker} handleQuantityInput(e, index)} class="border border-gray-300 dark:border-gray-500 rounded px-2 py-1 w-20 focus:outline-none focus:ring-1 focus:ring-blue-500" /> {#each userStrategy[index]?.dateList as item} { handleExpirationDate(item, index); }} class="sm:hover:bg-gray-200 dark:sm:hover:bg-primary cursor-pointer " > {formatDate(item)} {/each} {#each userStrategy[index]?.strikeList as item} { handleStrikePrice(item, index); }} class="sm:hover:bg-gray-200 dark:sm:hover:bg-primary cursor-pointer " > {item} {/each} handleOptionPriceInput(e, index)} class="border border-gray-300 dark:border-gray-500 rounded px-2 py-1 w-24 focus:outline-none focus:ring-1 focus:ring-blue-500" />

Trade Information

{#each userStrategy as item, index}
{"Option-Leg" + " " + (index + 1)}
{item?.action?.toUpperCase()} +{item?.quantity} {selectedTicker} {formatDate(item?.date)} {item?.strike} {item?.optionType} @${item?.optionPrice}
{/each}

Stock

{selectedTicker} Current Price
${currentStockPrice}
{selectedTicker} Breakeven Price
{typeof breakEvenPrice === "number" ? "$" + breakEvenPrice?.toFixed(2) : "n/a"}

Trade Details

Cost of Trade
${totalPremium?.toLocaleString("en-US", { minimumFractionDigits: 2, maximumFractionDigits: 2, })}
Maximum Profit
{metrics?.maxProfit}
Maximum Loss
{metrics?.maxLoss}
{:else}
{/if}