product – programatically saved custom option not reflection


I am using below code to add custom option to products programatically , they are getting saved in backend but not reflection in frontend until i click save product from backend , please let me know what i am missing

$product = $objectManager->create('MagentoCatalogModelProduct')->load($productId);
$values = (
    (
        'record_id'=>0,                                        
        'title'=>'Red',
        'price'=>10,
        'price_type'=>"fixed",
        'sort_order'=>1,
        'is_delete'=>0
    ),
    (
        'record_id'=>1,                    
        'title'=>'White',
        'price'=>10,
        'price_type'=>"fixed",
        'sort_order'=>1,
        'is_delete'=>0
    ),
    (
        'record_id'=>2,                    
        'title'=>'Black',
        'price'=>10,
        'price_type'=>"fixed",
        'sort_order'=>1,
        'is_delete'=>0
    )
);
 
print_r($values);
print_r($valueso);

$options = (
    (
        "sort_order"    => 1,
        "title"         => "Denomination",
        "price_type"    => "fixed",
        "price"         => "",
        "type"          => "drop_down",
        "is_require"    => 1,
        "values"        => $values
    )
);

 
$product->setHasOptions(1);
$product->setCanSaveCustomOptions(true);
foreach ($options as $arrayOption) {
    $option = $objectManager->create('MagentoCatalogModelProductOption')
            ->setProductId($productId)
            ->setStoreId($product->getStoreId())
            ->addData($arrayOption);
    $option->save();
    $product->addOption($option);
}