Erro para a inserir dados no banco

bom dia.
Tenho uma pagina de cadastro no qual esta está acusando dois erros. Segue o bloco do código abaixo:

<?php
$data = filter_input_array(INPUT_POST, FILTER_DEFAULT);

if(!empty($data['SendAddMsg'])){
     var_dump($data);
     $query=("INSERT INTO tabcadastro(nomecad, sobrenomecad, cpfcad, 
     telcelularcad, emailcad, logincad, senhacad) VALUES (:nome, 
     :sobrenome, :cpf, :telcelular, :email, :loginuser, :senha)");

     $addMsg=$conexao->prepare($data);
     $addMsg->bindParam(':name', $data['nomecad'], PDO::PARAM_STR);
     $addMsg->bindParam(':sobrenome', $data['sobrenomecad'], 
     PDO::PARAM_STR);
     $addMsg->bindParam(':cpf', $data['cpfcad'], PDO::PARAM_STR);
     $addMsg->bindParam(':telcelularcad', $data['telcelularcad'], 
     PDO::PARAM_STR);
     $addMsg->bindParam(':email', $data['emailcad'], PDO::PARAM_STR);
     $addMsg->bindParam(':loginuser', $data['logincad'], 
   PDO::PARAM_STR);
   $addMsg->bindParam(':senha', $data['senhacad'], PDO::PARAM_STR);
   $addMsg->execute();

   if($addMsg->rowCount()){
    echo "Cadastro realizado com sucesso";
    }else{
    echo "Cadastro não realizado com sucesso"; 
   }
}

O erro que está sendo mostrado é este:
Fatal error: Uncaught TypeError: mysqli::prepare(): Argument #1 ($query) must be of type string, array given in C:\xampp\htdocs\cadastro.php:22 Stack trace: #0 C:\xampp\htdocs\cadastro.php(22): mysqli->prepare(Array) #1 {main} thrown in C:\xampp\htdocs\cadastro.php on line 22

Eu confesso a vocês que eu não estou enxergando o erro. Alguém poderia me ajudar nisso? Obrigado.

O parâmetro não deveria ser query?

$addMsg=$conexao->prepare($query);

Uai! vou olhar isso e fazer testes. Eu realmente não havia atentado à isso.Obrigado cara! Eu to dou noticias depois :grin: