C++ : Avoid lot of boolean variable for multiple verification conditions in trading app

Posted by Naveen on Stack Overflow See other posts from Stack Overflow or by Naveen
Published on 2010-12-21T06:29:41Z Indexed on 2010/12/21 6:54 UTC
Read the original article Hit count: 282

Filed under:
|

Hi

i am a junior dev in trading app... we have a order refresh verification unit. It has to verify order confirmation from exchange. We send a bunch of different request in bulk ( NEW, MODIFY, CANCEL ) to exchange... Verification has to happen for max N times with each T intervals for all orders. if verification successful for all the order before N retry then fine.. otherwise we need to indicate as verification unsuccessfull. i hv done a basic coding done in very urgent like below

for( N times )
{
   for_each ( sent_request_order )   // SENT
   {
       1) get all the  refreshed order from DB or shared mem i.e REFRESHED
       2) find current sent order in REFRESHED 

       if( not_found )
            not refreshed from exchange, continue to next order

       if( found )

       case NEW :    //check for new status, mark verification done
       case MODIFY : //check for modified status.. 
                     //if not mark pending, go to next order, 
                     //revisit the same after T time
       case CANCEL : //check for cancelled status.. 
                     //if not mark pending, go to next order, 
                     //revisit the same after T time
   }

   if( all_verified )
       exit from verification.

   wait ( T sec )

}

order_verification_pending, order_verification_done, order_visited, order_not_visited, all_verified, all_not_verified ... lot of boolean flags used for indication..

is there any better approach for doing this.... splitting responsibilities across the classes......????

i know this is not a general question.... but still flags are making me tidious to handle...

© Stack Overflow or respective owner

Related posts about c++

Related posts about trading