def METHOD_NAME(
    preset: QuantizationPreset,
    target_device: TargetDevice,
    subset_size: int,
    ignored_scope: Optional[IgnoredScope],
    advanced_parameters: Optional[AdvancedQuantizationParameters],
) -> NNCFConfig:
    """
    Creates the NNCFConfig for the quantization algorithm.
    :param preset: A preset that controls the quantization mode
        (symmetric and asymmetric). It can take the following values:
        - `performance`: Symmetric quantization of weights and activations.
        - `mixed`: Symmetric quantization of weights and asymmetric
          quantization of activations.
    :param target_device: A target device the specificity of which will be taken
        into account while compressing in order to obtain the best performance
        for this type of device.
    :param subset_size: Size of a subset to calculate activations
        statistics used for quantization.
    :param ignored_scope:  An ignored scope that defined the list of model control
        flow graph nodes to be ignored during quantization.
    :param advanced_parameters: Advanced quantization parameters for
        fine-tuning the quantization algorithm.
    :return: NNCFConfig for the quantization algorithm.
    """
    compression_config = _get_default_quantization_config(preset, subset_size)
    if ignored_scope is not None:
        _ignored_scope = convert_ignored_scope_to_list(ignored_scope)
        if "ignored_scopes" in compression_config:
            compression_config["ignored_scopes"].extend(_ignored_scope)
        else:
            compression_config["ignored_scopes"] = _ignored_scope
        compression_config["validate_scopes"] = ignored_scope.validate
    if advanced_parameters is not None:
        compression_config = apply_advanced_parameters_to_config(compression_config, advanced_parameters)
    return NNCFConfig({"target_device": target_device.value, "compression": compression_config})