How to order and group custom post type posts by year and month

try something like

$paged = ( get_query_var('page') ) ? get_query_var('page') : 1;
    args = array(
        'orderby' => 'date',
        'order'   => 'DESC',
        'post_type' => 'event-calendar',
        'posts_per_page' => 5,
        'paged' => $paged
    );

    $query = new WP_Query( $args );

    while ($query->have_posts()){
        // do stuff
    }