Custom post type show on both Home and Date Archive

In your code ( $query->is_home() && $query->is_date() && $query->is_main_query() ) always returns false because $query->is_home() and $query->is_date() cannot be true on same page.
Try this,

function add_custom_post_type_to_query( $query ) {
    if ( ! is_admin()  &&  $query->is_main_query() ) {
       if ( $query->is_date() ||  $query->is_home()  ) {

           $query->set( 'post_type', array('post', 'pictures') );

       }
    }
}
add_action( 'pre_get_posts', 'add_custom_post_type_to_query' );

I hope this helps!