Traditionally in routing approaches, each node allows a maximum load through the selected route. The existing routing approaches in cognitive radio networks (CRN) do not take into account spectrum trading as well as spectrum competition among licensed users (PUs). This paper introduces a novel routing algorithm that is based on spectrum trading and spectrum competition for cognitive radio networks while supporting different QoS levels for unlicensed users (SUs). The proposed path selection algorithm among different paths is based on user profiles which contain parameters such as SU identification, number of hops, channel identification, neighbor identification, probabilities of idle slots and PU presence. Each node shares its profile with the neighbor PU, which then exchanges its profile with other PUs and decides based on the information received. In spectrum trading phase a PU calculates its price based on the SU requirements. In spectrum competition phase a new coefficient α is defined that controls the price because of competition among PUs and depends on many factors such as the number of primary users, available channels, and duration of the usage. All possible paths are managed and categorized based on the level of QoS requested by SUs and the price offered by the PU.